学习Django的第三天

一.模板渲染

 1.新建Django项目,创建一个app.

通过cmd命令窗口进入到项目路径,然后输入:

django-admin startproject <django名称>; //创建Django项目

进入创建的django <django名称>里面,输入:

python manage.py startapp <app名称>;//创建app

2.添加urls路径

进入 <django名称>里面打开urls输入

再app的views.py文件中输入:

接着再app中创建一个urls.py文件输入:

整个框架基础就创建ok了.

3.编写app的views

在app的views.py文件中可以看见from django.template.loaderimport render_to_string

调用该方法是为了导入文件中的heml;

这两集话可以看见第一句是render_to_string("index.html")的意思是:获取文件夹中的index.html文件;

return render(request,"move.html")的意思是:获取文件夹中的move.html文件;

这两句话功能是一样的只是两个不同的调用方法;

4.html路径定义

进入到django文件下面的settings.py文件中找到这个:

我们填写的是:os.path.join(BASE_DIR,'template')

这句话的意思是:'template'是我存放html的路径,前的的那些代码是我整个项目的路径进行拼接的绝对路径.也可以不指定项目中的文件,这个里面填写需要的html所在的绝对路径.

5.模板查找路径配置

在项目的settings.py文件中。有一个TEMPLATES配置,这个配置包含了模板引擎的配置,模板查找路径的配置,模板上下文的配置等。模板路径可以在两个地方配置。

1.DIRS:这是一个列表,在这个列表中可以存放所有的模板路径,以后在视图中使用render或者render_to_string渲染模板的时候,会在这个列表的路径中查找模板。

2.APP_DIRS:默认为True,这个设置为True后,会在INSTALLED_APPS的安装了的APP下的templates文件加中查找模板。settings.py中INSTALLED_APPS数组中添加你的app名字。

3.查找顺序:比如代码render('list.html')。先会在DIRS这个列表中依次查找路径下有没有这个模板,如果有,就返回。如果DIRS列表中所有的路径都没有找到,那么会先检查当前这个视图所处的app是否已经安装,如果已经安装了,那么就先在当前这个app下的templates文件夹中查找模板,如果没有找到,那么会在其他已经安装了的app中查找。如果所有路径下都没有找到,那么会抛出一个TemplateDoesNotExist的异常。

如果

这个里面不填的话 咋们可以在

这里面导入front app(我自己新建的),可以从front app中找到你调用的heml,如果这里面都没有的话就会报错.

二.DTL模板语言

1.在自己创建的app的views中写入

cntent是一个字典,在对应的html中写入

然后执行命令的效果

这种方式字典元组都可以:如

html
views
显示结果

唯一不可以的是集合.

传一个类:

views
html

注意:

不能通过中括号的形式访问字典和列表中的值,比如dict['key']和list[1]是不支持的!因为使用点(.)语法获取对象值的时候,可以获取这个对象的属性,如果这个对象是一个字典,也可以获取这个字典的值。所以在给这个字典添加key的时候,千万不能和字典中的一些属性重复。比如items,items是字典的方法,那么如果给这个字典添加一个items作为key,那么以后就不能再通过item来访问这个字典的键值对了。

key value items dict

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容