安装
PS D:> python -m pip install --upgrade pip#升级pip
PS D:> pip install Django==2.2 #最好用pip来装django框架
C:\Python37\Lib\site-packages\django;C:\Python37\Scripts #添加环境变量,添加完成后就可以使用Django的django-admin.py命令新建工程了。
#检测是否安装成功
PS D:> import django
PS D:> django.get_version()
PS D:> django-admin startproject HelloWorld
PS D:> python3 manage.py runserver 0.0.0.0:8000
模板
报错:
UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xa6 in position 9737: illegal multibyte sequence
with Path(CURRENT_DIR, ‘templates’, ‘technical_500.html’).open(encoding=“utf-8”) as fh:
分析:
HttpResponse 的作用是直接返回数据
render 的作用是把数据渲染到模板
No module named 'django.templates’起因和解决
把“template”重命名到了“templates”,这个问题经常出现在第一次使用Pycharm IDE的菜鸟身上。你把某个文件重命名为“templates”的同时,影响了settings.py文件,使得其中的某些东西也发生了变更。所以右击settings.py->LocalHistory -> ShowHistory 然后还原你的setting.py。
if/else 标签
{% if condition %}
… display
{% endif %}
for 标签
{% if condition %}
… display
{% endif %}
注释标签
{# 这是一个注释 #}
include 标签
{% include “nav.html” %}
模板继承
base.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob)</title>
</head>
<body>
<h1>Hello World!</h1>
<p>菜鸟教程 Django 测试。</p>
{% block mainbody %}
<p>original</p>
{% endblock %}
</body>
</html>
hello.html 中继承 base.html
{%extends "base.html" %}
{% block mainbody %}
<p>继承了 base.html 文件</p>
{% endblock %}
模型
数据库配置信息
#Django规定,如果要使用模型,必须要创建一个app。我们使用以下命令创建一个 TestModel 的 app:
PS D:\HelloWorld\HelloWorld> django-admin startapp TestModel
表单
控制器
【表单之POST传输 】
Django报错403在页面添加csrf_token无效时
方法1
1、检查setting里面是否有 ‘django.middleware.csrf.CsrfViewMiddleware’
2、 表单下添加这个 {% csrf_token %}
方法2
做了上面两部,还是报错 403 Forbidden. CSRF token missing or incorrect
1、在接收post数据的方法上添加一个 @csrf_exempt
2、并且导入模块 from django.views.decorators.csrf import csrf_exempt
3、删除{% csrf_token %}
方法3
删除 django.middleware.csrf.CsrfViewMiddleware
【模板】
【Django之URL】
更多推荐
Django菜鸟入门
发布评论