关于django:Django-ForeignKey关联查询

明天用到ForeignKey遗记怎么用了,网上查了一大堆写的乌七八糟,最初终于登录了django官网看了以下文档,真是写的简单明了,搞不懂网上一些教程非要将简略的货色复杂化。

依据官网的解释,我再来简化以下

第一步创立模型:

# 一级分类表
class TopCategory(BaseModel):
    title_zh = models.CharField(max_length=32, verbose_name='中文题目')

# 二级分类
class CategoryTag(BaseModel):
    title_zh = models.CharField(max_length=32, verbose_name='中文题目')
    top_category = models.ForeignKey(to=TopCategory, on_delete=models.DO_NOTHING, related_name='topcategory', verbose_name='关联外键')

反向查问 就是用被关联的模型(一级分类)查问关联的模型(二级分类)

#获取本身id为1的数据,例如一级分类下的:动物
row_data = models.TopCategory.objects.get(id=1)

#而后查看一级分类下有哪些二级分类,动物->乌龟,兔子,小鸟,麻雀...
res = row_data.topcategory.all()

正向查问 和下面反过来

#获取获取所有二级分类数据
row_data = models.CategoryTag.objects.all()

#而后查问这些二级分类都对应者那些一级分类例如[水,华,冰块,石头]->天然,[老虎,狮子]->动物
res = row_data.top_category 
#间接获取一级分类名称,如果须要获取ID学写top_category_id

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理