Как построить значение в админке Django с помощью пользовательских форм? - PullRequest
1 голос
/ 02 марта 2012

Как я могу изменить поле чеков на настраиваемые поля, которые составляют значение из 3 ChoiceField, объединяя их в одну строку?

Изначально в admin у меня есть:

class QuestionAdmin(admin.ModelAdmin):   
    fieldsets = [
        (_('Question'),  {'fields': ['id','text'...etc]}),
        (_('Checks'),  {'fields': ['checks']}),
    ]

adminsite.register(Question, QuestionAdmin)

Я понимаю, что яНужно сделать что-то в этом направлении в классе QuestionAdmin (далее следует неиспользуемый код):

def get_form(request, obj=None, **kwargs):
    if not obj:
        #here I need to get my custom form with 3 choicefields and add them to fieldsets
        self.fieldsets.append((None, {fields: ['choice_part_1', 'choice_part_2', 'choice_part_3']}))
    return super(QuestionAdmin, self).get_form(request, obj=None, **kwargs)

Тогда я должен ''. Присоединиться к выбранным значениям в какой-то момент и использовать полученное значение при отправке в качестве проверки поля ввода ...

Варианты выбора для полей выбора отсутствуют ни в одной модели, поэтому мне нужно использовать простую форму, используя формы. Форма?

Может кто-нибудь объяснить, как этого добиться?
(мне нужен такой подход, в противном случае я в конечном итоге изменю много кода)

Спасибо.

1 Ответ

1 голос
/ 02 марта 2012

Взгляните на MultiValueField , это позволяет разбить одно поле на несколько виджетов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...