0

多対多の関係で接続された2つのdjangoモデルがありました。

最初のモデル:

class Category(models.Model):

   name = models.CharField(max_length=255)
   products = models.ManyToManyField(Product, related_name='categories',
                                  blank=True, null=True,
                                  verbose_name=_('Products'),
                                  )

2 番目のモデル:

class Product(models.Model):

    description = models.TextField(verbose_name=_('Description'), default='')
    manifactor = models.CharField(verbose_name=_('Manifactor'), default='Blackberry', max_length=255)

わかりました、そう:

product = Product.objects.all()[0]
product.categories  - give me a list of categories for this product.

しかし:

product._meta.many_to_many - return empty list [].
and product._meta.get_field('categories') - return None.

なんで ?

商品オブジェクトからカテゴリフィールドの詳細な名前を取得するにはどうすればよいですか?

4

1 に答える 1

2

あなたは付け加えられます

categories = models.ManyToManyField(Category, 
                                    through=Category.products.through)

製品モデルに

于 2012-10-04T10:20:17.653 に答える