前面介绍过Django项目创建app,里面演示时直接返回了一个HttpResponse。但是实际开发中很少直接返回一个HttpResponse,一般都是使用html。这里就来介绍一下具体怎么使用。
创建html
在app的目录下面新建一个templates文件夹,在这个文件夹中可以新建html:
使用html
直接在view.py中通过render方法加载:
这里运行的时候可能会遇到找不到html的报错。具体原因不清楚,但是解决方法比较简单,直接到settings.py文件指定一下templates的地址:
运行一次之后,就可以删除了,之后运行都会自动到当前app目录下的templates文件夹下面找html。一般这个DIRS是配置根目录的templates地址的,不知道为什么第一次运行的时候没有到当前app下找templates。
静态文件引用
html的中经常要引用一些静态文件,这些静态文件必须放到同一个app下面的static文件夹里面:
不过上面这种引用方式比较死板,直接将静态文件的地址写死了。比较推荐的方式是这种方式:
这里加载的static,其实是settings.py中的这个变量:
这样引用静态文件的好处是万一路径变更,可以直接改STATIC_URL,不用改模板文件中的引用。
最终运行的效果是一样的:
总结
现在实际工作中基本都是前后端分离的,django项目主要是作为后端工程,很少需要python工程师写html及其他静态文件。不过作为初学者,了解一下django中静态文件的使用也是可以的。
像我最近的工作中几个测开做测试平台,没有前端工程师支持,就只能自己写html,毕竟老话说的好,技多不压身。