Django: доступ к пользовательским полям из фильтра в ForeignKey

Я хочу заполнить поле выбора пользователями, которые не являются сотрудниками. Я использую расширенный пользовательский класс (с OneToOneField, как упомянуто в документации Django):

class Usuario(models.Model):
    user =  models.OneToOneField (User)    
    departamento   = models.ForeignKey(Departamento, null=True)

Затем,

class Proyecto(models.Model):
    ip = models.ForeignKey(Usuario, limit_choices_to = {'user.is_staff__exact': False },  related_name='pr_ip') # not working!
    jp = models.ForeignKey(Usuario, limit_choices_to = {'departamento__isnull': False },   related_name='pr_jp') # works!

Проблема в том, что я не могу использовать поле user.is_staff для фильтрации. Любая идея о том, как это исправить или как это сделать?

1 ответ

Решение

Вместо этого используйте двойное подчеркивание:

'user__is_staff__exact': False
Другие вопросы по тегам