博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
04 Django 视图与网址-urls.py
阅读量:6689 次
发布时间:2019-06-25

本文共 2288 字,大约阅读时间需要 7 分钟。

Django中网址是写在 urls.py 文件中,用正则表达式对应 views.py 中的一个函数(或者generic类),我们用一个项目来演示。

一、首先,新建一个项目(project)

参见03

二、新建一个应用(app)

参见03

完成之后的框架如图:

三、参数设置

1、把我们新定义的app加到settings.py中的INSTALL_APPS

INSTALLED_APPS = [    'django.contrib.admin',    'django.contrib.auth',    'django.contrib.contenttypes',    'django.contrib.sessions',    'django.contrib.messages',    'django.contrib.staticfiles',    'MyDjango',]

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

 

2、配置模板路径

TEMPLATES = [                {                    'BACKEND': 'django.template.backends.django.DjangoTemplates',                    'DIRS': [os.path.join(BASE_DIR, 'templates')], #主要是这一部分                    'APP_DIRS': True,                    'OPTIONS': {                        'context_processors': [                            'django.template.context_processors.debug',                            'django.template.context_processors.request',                            'django.contrib.auth.context_processors.auth',                            'django.contrib.messages.context_processors.messages',                        ],                    },                },            ]

 

3、配置静态文件目录

STATICFILES_DIRS = (            os.path.join(BASE_DIR, 'static'),        )

 

4、定义视图函数(访问页面时的内容)

把views.py打开,修改其中的源代码

#coding='uft-8'from django.shortcuts import renderfrom django.http import HttpResponse# Create your views here.def index(request):    return HttpResponse('Hello,World!')

 

第一行是声明编码为utf-8, 因为我们在代码中用到了中文,如果不声明就报错.

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

我们定义了一个index()函数,第一个参数必须是 request,与网页发来的请求有关,request 变量里面包含getpost的内容,用户浏览器,系统等信息在里面(后面会讲,先了解一下就可以)。

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

5、定义视图函数相关的URL(路由规则)

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

from django.conf.urls import urlfrom django.contrib import adminfrom MyApp import viewsurlpatterns = [    url(r'^admin/', admin.site.urls),    url(r'^$',views.index) #new]

 

6、其他

①因目前暂时用不到csrf,为避免报错,需要在settings中,middlerware下# 注释 csrf

 

在终端上运行 pythsettings中on manage.py runserver,我们就能看到如下的界面

 

 

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

python manage.py runserver 0.0.0.0:8000 监听机器上所有ip 8000端口,访问时用电脑的ip代替 127.0.0.1

 

转载于:https://www.cnblogs.com/jasonli-01/p/6672948.html

你可能感兴趣的文章
Python学习笔记__9章 IO编程
查看>>
Python学习笔记__20.1章 协程
查看>>
第六章 总结
查看>>
决心书
查看>>
Oracle案例11——Oracle表空间数据库文件收缩
查看>>
2018.11.03-dtoj-2092-交通 (traffic)
查看>>
内置模块(二)
查看>>
【HNOI2016】树
查看>>
Java Web整合开发(附录1) - 安装配置环境
查看>>
javascript对象创建
查看>>
linux解压war包的命令
查看>>
MyQThread new
查看>>
js的继承
查看>>
SOCKET用法详解
查看>>
C++11的新特性:右值引用
查看>>
memcache和redis的区别
查看>>
NodeJS、NPM安装配置步骤(windows版本)
查看>>
spring xml配置文件根元素(文件头文件)说明
查看>>
windows ssh RPi 2B
查看>>
Git常用命令
查看>>