0

我有这些模型:

class Category(models.Model):
        name =   models.CharField(blank=True)

class Element(models.Model):
    name =   models.CharField(blank=True)
    categories = models.ManyToManyField(Category, related_name='places', blank=False, null=True)

如何按字段名称获取所有类别?

element._meta.get_field('category')返回多对多字段。如何从此对象获取所有类别

UPD:我需要按名称访问:我按字段名称迭代并收集相关对象。

例子:

names = []
for field_name in ['categories', 'some_another_m2m_field_name']:
    for related_object in objects._meta.get_field(field_name).all():
        names.append(related_object.name)

谢谢你

4

1 回答 1

1

这会做我猜:

element._meta.get_field('categories').value_from_object(element)
于 2013-09-26T10:44:28.313 回答