【问题标题】:Associating multiple images with a class object logic将多个图像与类对象逻辑相关联
【发布时间】:2016-06-23 00:58:29
【问题描述】:

我希望在创建类对象时将零到三个图像关联到一个类对象,但我不知道最好的方法。

示例:当用户创建图片竞赛时,他们使用零到三张图片来定义他们的图片风格。这些是静态图片,因此永远不会更新。

我能想到的唯一方法是创建一个名为stylePictures 的单独类,并在Contest 中有三个字段,分别为“styleOne”、“styleTwo”和“styleThree”,它们可以为空。这似乎不是最有效的方法。

有什么想法吗?

【问题讨论】:

    标签: django python-3.x django-models logic


    【解决方案1】:

    我会创建两个单独的类。这样,您的功能可以很容易地演变成将来使用更多图片的功能。

    class PictureContest(models.Model):
        # fields
    
    class PictureStyle(models.Model):
        image = models.FileField(upload_to="upload/picture_style")
        picture_contest = models.ForeignKey("PictureContest")
    

    获取与单张图片竞赛相关的所有图片样式。

    首先你必须隔离你想要的图片竞赛。

    pc = PictureContest.objects.filter(id=2) # find your picture contest
    

    然后过滤以pc.id为字段值的图片样式。

    pic_styles = PictureStyle.objects.filter(picture_contest__id=pc.id)
    

    【讨论】:

    • 这是我想的路线,但是在 PictureContest 中,如果选择了特定的 PictureStyle 实例,您会添加哪些字段来说明?我需要有零到三个 PictureStyle 对象与一个 PictureContest 对象相关联
    猜你喜欢
    • 1970-01-01
    • 2013-07-12
    • 1970-01-01
    • 1970-01-01
    • 2017-07-03
    • 1970-01-01
    • 2011-09-10
    • 2011-04-08
    • 1970-01-01
    相关资源
    最近更新 更多