首页 > 其他 > 详细

django2-一对多

时间:2019-06-02 00:13:49      阅读:136      评论:0      收藏:0      [点我收藏+]

一对多

环境

两个类:书的类别和文章,一片文章只能有一个作者,一个作者可以有多个文章,这之间组成了一对多的关系

class Category(models.Model):
    category = models.CharField(max_length=100)

    def __str__(self):
        return self.category



class Article(models.Model):
    title = models.CharField(max_length=20,verbose_name=‘书名‘)
    info = models.TextField(verbose_name=‘内容‘)
    author = models.CharField(max_length=10, verbose_name=‘作者‘)
    f = models.ForeignKey(to=‘Category‘,on_delete=models.CASCADE)#如果不想用article_set这种形式查找,可以使用related_name=‘articles‘,那么在视图one_to_many函数中就可以使用articles = category.articles.all()

添加文章

def add_article(request):
    article = Article(title=‘钢铁是怎样炼成的‘,info=‘不知道‘,author=‘疯子‘)
    article.f = Category.objects.get(id=1)
    article.save()
    return HttpResponse(‘添加文章成功‘)

 

通过书的类型查找文章

def one_to_many(request):
    category = Category.objects.first()
    articles = category.article_set.all()#all可以换成filter或者first
    for i in articles:
        print(i.title)
        print(i.author)
        print(i.content)
    return HttpResponse(‘ok‘)

 

django2-一对多

原文:https://www.cnblogs.com/fengzi7314/p/10961576.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!