2015-10-21 3 views
1

У меня есть модель Django с несколькими полями ManyToMany. Я хочу запросить один из них динамически, в соответствии с именем поля, внутри метода этой модели.Как получить объект ManyToMany Manager с использованием имени поля

Как получить объект менеджера ManyToMany, используя только имя поля. Возможно ли это?

+0

Знаете ли вы, что имя поля m2m? или он поступает как параметр в методе и, соответственно, поле будет определено? –

+0

, входящий в качестве параметра строки –

ответ

2

Вам необходимо получить значение атрибута динамически. Использовать getattr

def method(self, param_name): 
    field = getattr(self, param_name) 
    all = field.all() 

Это должно помочь.

+1

полем в вышеприведенном ответе будет менеджер m2m –