1.外键:增加数据操作
#models.py
#函数,可以提高代码的利用率
def set_default():
return Category.object.get(pk=2)
class Category(models.Model):
name=models.CharField(max_length=100)
class Article(models.Model):
title=models.CharField(max_length=100)
content=models.TextField()
category=models.ForeignKey("Category",on_delete=models.CASCADE,bull=True)
#设置默认值
category=models.ForeignKey("Category",on_delete=models.SET_DEFAULT,default=Category.objects.get(pk=2))
category=models.ForeignKey("Category",on_delete=models.SET(Category.objects.get(pk=2)))
category=models.ForeignKey("Category",on_delete=models.SET(set_default))
#使用的是别的app的外键,
forntuser=models.ForeignKey("app_name.frontname",on_delete=models.CASCADE)
#on_delete=donothing,完全依靠数据库级别的约束
#views.py
def indexxxx(request):
category=Category(name="最新文章")
category.save()
article=Article(title="标题",content="这是内容")
article.category=category
article.save()
return HttpResponse("success 添加文章和标签")
外键引用自己,可以用于盖楼式评论
class comment(models.Model):
content=models.TextField()
origin_comment=models.ForeignKey("self",on_delete=models.CASCADE)
#或者写成 origin_comment=models.ForeignKey("comm