python web django

Django的模板语法,如下:

{{}} :用于变量替换。
{%for i in content%}{{i}}{%endfor%} : for 循环
{%extends "base.html"%} : 用于指定父模板文件
{%block name %} ··· {%endblock%} :用于指定被替换的内容,内容名称为 name.
{%if 条件%} .....{% elif 条件%} ....{%else%}... {%endif%} :用于 if 语句

常用的 ORM 查询操作:

ModelName.object.all() #返回 model 的所有数据集

ModelName.object.filter(**kwargs) #返回符合筛选条件的数据集

ModelName.object.exclude(**kwargs) #返回不符合筛选条件的数据集

ModelName.object.get(**kwargs) #用于查询单条记录

创建数据

# 第一种方式
# models.UserInfo.objects.create(username="root",password="123")
# 第二种方式
# obj = models.UserInfo(username='fzh', password="iajtag")
# obj.save()
# 第三种方式
# dic = {'username':'fgf', 'password':'666'}
# models.UserInfo.objects.create(**dic)

查询数据

# result = models.UserInfo.objects.all()  # 查询所有,为QuerySet类型,可理解成列表
# result = models.UserInfo.objects.filter(username="fgf",password="666")  # 列表
# result = models.UserInfo.objects.filter(username="fgf").first()  # 对象
# 条件查询。filter 相当于where查询条件,里面的","会组成and条件
# for row in result:  # 打印查询到数据。
#     print(row.id,row.username,row.password)

# 查看QuerySet类型具体做了什么事情,可以: print(result.query)

删除数据

# models.UserInfo.objects.all().delete()  # 删除所有
# models.UserInfo.objects.filter(id=4).delete()  # 删除所有

更新数据

# models.UserInfo.objects.all().update(password=8888)
# models.UserInfo.objects.filter(id=3).update(password=888888)

数据库(ORM)操作相关:
如果想要完全删除migrations(使用sqllite时),需要将所有缓存文件/夹都删掉
然后新建一个空的migrations

python manage.py makemigrations –empty (你的app名字)
python manage.py makemigrations
python manage.py migrate
解决!