创建一个项目,名字叫mysite

django-admin startproject mysite(项目名)

成功后,看到如下样式

mysite
├── manage.py
└── mysite
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py

我们会发现执行命令后,新建了一个 mysite 目录,其中还有一个 mysite 目录,这个子目录 mysite 中是一些项目的设置 settings.py文件,总的urls配置文件 urls.py 以及部署服务器时用到的 wsgi.py 文件, __init__.py 是python包的目录结构必须的,与调用有关。

我们到最外层mysite目录下,新建一个应用叫learn

python manage.py startapp learn

可以看到mysite中多了一个文件夹learn,django1.9以上的版本还多了一个migration文件夹和apps文件

把我们新定义的app加到settings.py的install_apps中,加在最后比较好

这一步是干什么的呢,新建的app如果不加到install_apps中的话,django就不能自动找到app中的模板文件(app-name/templates/下的文件)和静态文件(app-name/static/中的文件) ,这个很关键

访问视图函数(访问页面时的内容)

我们在learn这个目录中,把views.py打开,修改其中的源码,改成下面的

#coding:utf8
from django.http import HttpResponse def index(request):
return HttpResponse(u'欢迎光临我的博客园')

第一行声明编码为utf8,因为我们在代码中用到了中文,如果不声明就会报错

第二行引入HttpResponse,它是用来想网页返回内容的,就像python中的print一样,只不过HttpResponse把内容显示到网页上

我们定义了一个index()函数,第一个参数必须是request,与网页发来的请求有关,request变量里包含get和post的内容,用户浏览器,系统等信息在里面

函数返回了一个HttpResponse对象,可以经过一些处理,最终显示内容到网页上

那么问题来了,我们访问什么网址才能看到刚才写的这个函数呢?怎么让网址和函数关联起来呢

定义视图函数相关的URL(网址)(即规定访问什么网址对应什么内容)

我们打开mysite/mysite/urls.py这个文件,修改其中的代码

from django.con.urls import url
from django.contrib import admin
from learn import views as learn_views urlpatterns=[
url(r'^$',learn_views.index),
url(r'^admin/',admin.site.urls),
]

以上都修改并保存后,在终端运行python manage.py runserver

http://127.0.0.1:8000/

如果是在另一台电脑上访问要用python manage.py ip:port的形式,比如监听所有ip

python manage.py runserver 0.0.0.0:8000

监听机器上所有ip 8000端口,访问时用电脑的ip代替127.0.0.1

1django 视图与网址的更多相关文章

  1. 1.2、Django 视图与网址__进阶

    Django 视图与网址进阶 1.1.简单使用: 把我们新定义的app加到settings.py中的INSTALL_APPS中 修改 HelloDjango/HelloDjango/settings. ...

  2. django 视图与网址

    我是一个新手,内容粗糙,望大家多多指点.在这里我只是总结自身所学. 视图与网址 操作文件:urls.py.views.py urls.py 作用:用于处理前台的链接(如前台访问:127.0.0.1:8 ...

  3. Django 视图与网址进阶

    一 .在网页上做加减法 1. 采用 /add/?a=4&b=5 这样GET方法进行 1 2 3 django-admin.py startproject zqxt_views cd zqxt_ ...

  4. Django视图与网址

    Django中网址是写在 urls.py 文件中,用正则表达式对应 views.py 中的一个函数(或者generic类),我们用一个项目来演示. 下载本节所有源代码: 学习编程最好的办法就是动手敲代 ...

  5. 【Django视图与网址进阶004】

    一.在网页上做加减法 1. 采用 /add/?a=4&b=5 这样GET方法进行 django-admin.py startproject zqxt_views cd zqxt_views p ...

  6. Django web框架-----视图与网址的不同请求方式

    在网页上做加减法 说明:mytestsite是django框架下的项目,quicktool是mytestsite项目中的应用 方式一:采用  /add/?a=1&b=4这种get方法进行 qu ...

  7. Django web框架-----win10搭建django2.1.7开发环境,定义简易视图及网址

    ① 安装Django 使用pip命令或者pycharm setting的project Interpreter工具添加安装 检查是否安装成功,以下命令无报错即成功: 查看安装的Django版本号的两种 ...

  8. Django的视图与网址之加法计算

    在最新的Django2.1中,views.py中采用的地址映射方式发生了变化,通过一个加法运算我们来看一看. 方法一:在视图views.py中定义视图逻辑,求解两个数的加法运算:c = a + b,定 ...

  9. 2django 视图与网址进阶

    一.在网页中做加减法 采用/add/?a=11&b=22这样get方法进行 django-admin.py startproject zqxt_views cd zqxt_views pyth ...

随机推荐

  1. mysql kill process解决死锁

    mysql使用myisam的时候锁表比较多,尤其有慢查询的时候,造成死锁.这时需要手动kill掉locked的process.使他释放. (以前我都是重起服务)..惭愧啊.. 演示:(id 7是我用p ...

  2. MYSQL总结之sql语句大全

    一.基础1.说明:创建数据库 CREATE DATABASE database-name .说明:删除数据库 drop database dbname .说明:备份sql server --- 创建 ...

  3. appium----基本概念

    转:http://www.cnblogs.com/nbkhic/p/3803830.html Client/Server Architecture appium的核心其实是一个暴露了一系列REST A ...

  4. day14—JQuery编程基础

    JQuery 1.什么是jQuery jQuery是一个优秀的JavaScript框架.一个轻量级的JavaScript类库.jQuery的核心理念是Write less.Do more. 使用jQu ...

  5. python的list求和与求积

    python中,无论是对的list求和还是求积,我都给出了两种方法. 1.对list求和 1.1 s=0 for i in range(10): s+=i 1.2 s=sum(range(10)) 2 ...

  6. Http协议 详解(转载)

    http://blog.csdn.net/gueter/archive/2007/03/08/1524447.aspx 引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分 ...

  7. python 常用数据结构

    #coding=utf- #元组,不可变序列(,) a=(,,,) print(a) a=tuple([,,,])#第二种定义方式 print(a) print(a[]) print(a[:]) #可 ...

  8. 解决Class 'swoole_server' not found

    1.看下cli模式是否可以正常工作,命令行下运行 php -r "echo php_sapi_name();" 这条命令就是在cli模式运行php语句,php -r就是run一条p ...

  9. 如何使用subversion管理iOS源代码

    本文转载至 http://2009315319.blog.51cto.com/701759/819216 使用subversion管理iOS源代码 1.安装和配置subversion服务器 在wind ...

  10. Apache禁止ip访问

    网站突然让禁止ip访问,于是就通过配置Apache达到了想要的效果. 我们网站用的是Apache+tomcat集群,所以需要配置虚拟主机,虚拟主机我在这里就不说了,不明白的上网搜搜吧,这里只说禁止ip ...