Django对一对多关系的额外观点

时间:2017-05-28 23:35:55

标签: python django one-to-many relationships

我正在尝试使用django的额外视图来创建一对多的关系。 我店里有一个项目模型:

class Item(models.Model):
    name = models.TextField(
        'Название товара'
    )

    company = models.TextField(
        'Производитель'
    )
    category = models.TextField(
        'Категория'
    )
    photo = models.ImageField(
        blank=True,
        null=True,
        upload_to='photos/%Y/%m'
    )
    price = models.PositiveIntegerField(
        'Цена'
    )
    quantity = models.PositiveIntegerField(
        'Количество'
    )
    text = models.TextField('Описание товара', blank=True, null=True)

图像模型:

class Images(models.Model):
    Image = models.ImageField(blank=True, null=True, 
    upload_to='photos/other/%Y/%m')

和关系模式:

class ItemImages(models.Model):
    item_id = models.ForeignKey(Item, default=1, 
        on_delete=models.CASCADE)
    img_id = models.ForeignKey(Images, default=1, 
        on_delete=models.CASCADE)

基本上我正试图像这样使用它:

 class ImgInLine(InlineFormSet):
    model = Images


class ChainInLine(InlineFormSet):
    model = ItemImages


class AddItemView(PermissionRequiredMixin, CreateWithInlinesView):
    permission_required = 'shop.add_item'
    raise_exception = True
    model = Item
    fields = ['name', 'company', 'category', 'text', 'photo', 'price', 
             'quantity']
    inlines = [ImgInLine, ChainInLine]

我收到了错误:

  

/ error /'shop.Images'中的ValueError对'shop.Item'没有ForeignKey。

所以我不知道这件事是如何运作的。

0 个答案:

没有答案