Выберите набор запросов для limit_choices_to на основе полей объекта
Я пытаюсь ограничить выбор чужого поля теми другими объектами, которые выглядят как объект сам.
Я пробовал это:
class Model1(models.Model):
entry = models.ForeignKey(Model2, limit_choices_to='get_limit_choices_to')
number = IntegerField()
def get_limit_choices_to(self):
return Model2.objects.filter(expenditure_type=self.expenditure_type)
class Model2(models.Model):
number = IntegerField()
но я получаю ошибку
_filter_or_exclude() argument after ** must be a mapping, not str
Я не знаю, является ли limit_choices_to правильным способом сделать это. Возможно я должен выбрать набор запросов в или представлениях.
Ошибка говорит о том, чтоlimit_choices_to='get_limit_choices_to'
это неправильный способ ссылки на метод, но как я могу ссылаться на метод правильно? Я не могу использовать
limit_choices_to=lambda: {'model1_set': self}
ни
limit_choices_to=lambda: {'number': number}
Я использую Django 1.7.