您的位置:首页 > 编程语言 > Python开发

Python web入门:Django学习与实践二(简单页面实现和创建一个模板)

2017-08-22 20:23 1271 查看

一、第一个页面实现(“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

               #依葫芦画瓢

               url(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中创建以应用名为名的文件夹,将模板文件放进去
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python web django