django tips
创建虚拟环境stu
python -m venv stu
stu/Scripts/Activate #启动虚拟环境
cd crashcourse
新建django项目
1 | pip install django |
新建django app
1 | python manage.py startapp xxx |
启动django
.\manage.py runserver
python manage.py runserver
配置数据库:
1 | DATABASES = { |
创建超级用户
python manage.py createsuperuser
1 | import random |
数据库更新:
1 | python manage.py makemigrations |
ot Found: /favicon.ico #访问网页时找不到图标
使用表单模板
您只需将表单实例放到模板的上下文中即可。因此,如果您的表单在上下文中叫 form ,那么 将渲染它相应的 <label> 和 <input> 元素。https://docs.djangoproject.com/zh-hans/3.2/topics/forms/
使用表单中的值:
1 | from django.core.mail import send_mail |
Meta 选项
使用内部 Meta类 来给模型赋予元数据,就像:
from django.db import models
class Ox(models.Model):
horn_length = models.IntegerField()
class Meta:
ordering = ["horn_length"]
verbose_name_plural = "oxen"
模型的元数据即“所有不是字段的东西”,比如排序选项( ordering ),数据库表名( db_table ),或是阅读友好的单复数名( verbose_name 和 verbose_name_plural )。这些都不是必须的,并且在模型当中添加 Meta类 也完全是可选的。
在 模型可选参数参考 中列出了 Meta 可使用的全部选项。
Model signals -models信号机制
2 pre_init # django的modal执行其构造方法前,自动触发
3 post_init # django的modal执行其构造方法后,自动触发
4 pre_save # django的modal对象保存前,自动触发
5 post_save # django的modal对象保存后,自动触发
6 pre_delete # django的modal对象删除前,自动触发
7 post_delete # django的modal对象删除后,自动触发
8 m2m_changed # django的modal中使用m2m字段操作第三张表(add,remove,clear)前后,自动触发
9 class_prepared # 程序启动时,检测已注册的app中modal类,对于每一个类,自动触发
10 Management signals
11 pre_migrate # 执行migrate命令前,自动触发
12 post_migrate # 执行migrate命令后,自动触发
13 Request/response signals
14 request_started # 请求到来前,自动触发
15 request_finished # 请求结束后,自动触发
16 got_request_exception # 请求异常后,自动触发
17 Test signals
18 setting_changed # 使用test测试修改配置文件时,自动触发
19 template_rendered # 使用test测试渲染模板时,自动触发
20 Database Wrappers
21 connection_created # 创建数据库连接时,自动触发
数据库为空需要null = True,blank = True
bootstrap将页面12等分,copy class里内容 div来确定比例
limit_choices_to={‘pid__exact’: 0}
province = models.ForeignKey(
“china”, blank=True, null=True, verbose_name=’省份’, limit_choices_to={‘id__in’: [‘11’, ‘12’, ‘13’]}
)
- Title: django tips
- Author: Ikko
- Created at : 2023-01-03 15:41:05
- Updated at : 2023-01-15 20:07:05
- Link: https://redefine.ohevan.com/2023/01/03/django-tips/
- License: This work is licensed under CC BY-NC-SA 4.0.