Как отфильтровать параметры администратора по атрибуту пользователя? - PullRequest
0 голосов
/ 03 мая 2011

У меня есть модель с внешним ключом к модели под названием Страна.

Каждый раз, когда я редактирую свою модель в админке, при отображении опции страны я вижу много странностей. Мне бы хотелось, чтобы этот список параметров был предварительно отфильтрован по атрибуту пользователя (например, user.get_profile (). Continent).

Где я могу подключить его?

Спасибо

1 Ответ

1 голос
/ 03 мая 2011

Проверка http://docs.djangoproject.com/en/dev/ref/contrib/admin/ - "ModelAdmin.formfield_for_choice_field ()"

class MyModelAdmin(admin.ModelAdmin):
    def formfield_for_choice_field(self, db_field, request, **kwargs):
        if db_field.name == "country":
            kwargs['choices'] = get_country_choices_for_continent(request.user.get_profile().continent)
        return super(MyModelAdmin, self).formfield_for_choice_field(db_field, request, **kwargs)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...