def xxx(request): # 业务逻辑 return 响应 # 响应的方式 HttpResponse(‘字符串‘) # 返回一个字符串 render(request, ‘模板的文件名‘, {‘k1‘: v1}) redirect(‘地址‘) # 重定向 request.method # 请求方式 GET POST
models.py 模型函数
class Xxx(models.Model): name = models.CharField(max_length=32) # 即类似 MySQL 数据库中的varchar(32) class Yyy(models.Model): name = models.CharField(max_length=32) xxx = models.ForeignKey(‘Xxx‘, on_delete=models.CASCADE) """ on_delete 2.0版本后是必填的 models.CASCADE 级联删除 models.PROTECT 保护删除 models.SET(v) 删除后设置为某个值 models.SETDEFAULT 删除后设为默认值 models.SET_NULL 删除后设置为Null models.DO_NOTHING 什么都不做 """
ORM的操作
查
from xxxx import models models.Xxx.objects.all() # 获取所有的数据 QuerySet 对象列表 models.Xxx.objects.get(name=‘xx‘, id=‘1‘) # 获取一条存在且唯一的数据 models.Xxx.objects.filter(name=‘xx‘) # 获取多条数据
新增
models.Xxx.objects.create(name=‘xx‘) # 新增的对象
删除
models.Xxx.objects.get(pk=1).delete() models.Xxx.objects.filter(pk=1).delete() # 批量删除
编辑
foo_obj.name = ‘xx‘ foo_obj.save() # 保存到数据库 models.Yyy.objects.filter(pk=1).updata(name=‘x‘, xx_id=xxx的id) # 批量更新
return render(request, ‘模板的文件名‘, {‘k1‘: v1, ‘k2‘: v2})
{{ k1 }} {{ k2 }} for {% for i in k1 %} {{ forloop.counter }} {{ i }} {% endfor %} if {% if 条件 %} xxx {% elseif 条件1 %} xxx {% else %} xxx {% endif %} ...
以上就是本人的一些总结,希望对各位有所帮助。
原文:https://www.cnblogs.com/xcbb/p/14819387.html