Django第二课:创建第一个页面(响应),template

一、创建第一个页面(响应)

1.进入项目中的views.py文件中添加代码:

form django import HttpResponse

def index(request):
    return HttpResponse("hello world")

2.在urls.py中配置url

第一种url配置:

  • 第一个参数是url本身,是一个地址(用的是正则表达式)
  • 第二个参数是响应函数
  • url名称(可以省略)
    url(r'^index/',bv.index),

3.运行服务器

pyhton manage.py runserver

4.进入浏览器,地址栏中输入:

http://localhost:8000/index/

就可以看到 计算机界十分经典的* hello world *的字样

注意:
每个响应对应一个函数,函数必须返回一个响应
函数必须存在一个参数,一般约定为request

第二种URL配置:

  • from django.conf.urls import url,include
  • 删除掉import blog.views as bv
  • 修改url函数的第二个参数,第一个参数也顺便修改得合理些:
    url(r'^blog/',include('blog.urls')),
  • 在blog目录下创建一个urls.py文件,其中的代码
from django.conf.urls import url,include
from . import views

urlpatterns = [
     url(r'^$',views.index),
]

ps:改成空字符串是因为两个文件中的路径一样,没有必要
^是用来约束以空开始,$约束以空结尾

二、创建template

1.templates介绍

是HTML文件,使用了Django模板语言(Django Templates Language ,DTL)
也可以使用第三方模板(如Jinja2)

2.开发第一个Template

步骤:

  • 在APP根目录下创建名叫Templates的目录
  • 在该目录下创建HTML文件:index.html
  • 在views.py中修改index函数:
def index(request):
    return render(request,"index.html")

render的第一个参数是请求对象本身,第二个是模板文件,第三个是后台传递到前端的数据可以省略

3.DTL的初步使用

render函数中支持一个dict类型参数,该字典是后台传递到模板的参数,键为参数名,在模板中使用{{参数名}}来直接使用

修改后的index函数:

def index(request):
    return render(request,"index.html",{'hello':"hello!"})

修改后的HTML文件:


<body>
<h1>{{ hello }}</h1>
</body>

注意:Django查找templates的顺序是按照INSTALLED_APPS中的添加顺序,如果两个应用的模板文件名称相同,就会造成冲突,无法达到想要的效果
解决方案:
在APP的templates目录下创建以APP 为名称的目录,将模板文件放入其中

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容