一、第一个页面实现(“hello world”)
实现步骤:
1.在views.py文件中创建一个处理函数(参数名可以随意,但是最好使用request,看起来清楚明了)
def index(request):
return render(request, template_name, context=None, content_type=None, status=None, using=None)
此方法的作用---结合一个给定的模板和一个给定的上下文字典,并返回一个渲染后的 HttpResponse 对象。
通俗的讲就是把context的内容, 加载进templates中定义的文件, 并通过浏览器渲染呈现.
参数讲解:
request: 是一个固定参数, 没什么好讲的。
template_name: templates 中定义的文件, 要注意路径名. 比如'templates\polls\index.html', 参数就要写‘polls\index.html’
context: 要传入文件中用于渲染呈现的数据, 默认是字典格式
content_type: 生成的文档要使用的MIME 类型。默认为DEFAULT_CONTENT_TYPE 设置的值。
status: http的响应代码,默认是200.
using: 用于加载模板使用的模板引擎的名称。
2.注意配置URL(在urls.py中)
from . import views as bv
#依葫芦画瓢
r'^index/',views.home, name='home')
注:在urls.py中标注出url配置有三种办法,此处使用的是第一种
3.可以访问了
可以使用localhost也可以使用127.0.0.1
E: 127.0.0.1:8000/index 注:此处的index就是相应处理函数的名字
二、创建一个模板
1.URL配置的另一种方式
在一种配置URL的方式会导致当请求函数过多时urls.py会显得很混乱,因此采用第三种URL配置方法:使用include函数
Including another URLconf
1. Import the include() function: from django.conf.urls import url, include
2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls'))
此处的处理方法是在每个应用的内部创建自己的urls.py文件,其格式内容与根目录下urls.py
例如:配置说明使用include(‘blog.urls’)则是指向blog内自己的urls文件,blog为访问blog中模板的总入口
2.开发第一个模板(Template)
(1)什么是模板?
模板就是用于前端显示的一个框架,是一个HTML文件,使用Django模板语言(DTL)编写
(2)开发步骤
1)在应用的根目录下创建一个名为Templates的目录
2)在该目录下创建模板文件。如:index.html
3)在views.py中使用render返回模板,也就是render的第二个参数
(3)DTL应用初识
render()函数支持一个字典类型的参数
该字典是将数据传递给模板,键为参数名(此处可以联想到JavaWeb中的“域”的问题和“$”的使用)
在模板中使用{{ 键名 }}来直接使用数据 (这点和javaWeb也是极其相似的)
(4)注意事项
Dj ango查找模板问题:Django会根据INSTALLED_APPS的添加顺序查找templates,不同templates目录中的同名HTML文件会造成命名冲突
解决方法:在每个应用的Templates中创建以应用名为名的文件夹,将模板文件放进去