Как я могу ограничить показ элементов в MultipleChoiceField? - PullRequest
2 голосов
/ 18 августа 2011

У меня есть MultipleChoiceField. Мне нужно назначить целочисленное значение, которое обеспечивает, что MultipleChoiceField показывает только это количество элементов на веб-сайте? Как я могу это сделать?

Другой вопрос: где я могу найти документацию, содержащую ответы на этот вопрос? Мне нужен документ, такой как QT Asistant.

1 Ответ

0 голосов
/ 19 августа 2011

Вы можете изменить выбор любого поля выбора в init.

Учитывайте это

class BookForm(forms.Form):
    book = forms.ModelChoiceField(queryset=Book.objects.all())
    user = forms.EmailField()

    def __init__(self, author=None, *args, **kwargs):
        super(CheckoutForm, self).__init__(*args, **kwargs)
        if author:
            self.fields['book'].queryset = Book.objects.filter(author__icontains=author)

В этом примере вы можете вызывать BookForm () как обычно, или вы можете вызывать BookForm(author = "Tolkien")

Таким образом, вы бы могли изменить ModelChoices на лету, как вы могли заметить, это тот же процесс, что и для изменения обычного выбора на лету, просто пройти итерацию (обычно 2кортежи)

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