Другой виджет ManyToManyField - PullRequest
       5

Другой виджет ManyToManyField

1 голос
/ 19 апреля 2009

Стандартный виджет django 1.0.2 ManyToManyField (множественный выбор) трудно использовать, когда в поле выбора много объектов. Есть ли другой виджет, который дает список идентификаторов в текстовой области через запятую? Если это недоступно, что мне нужно сделать, чтобы написать его и показать ли оно на ModelForm.as_p () и на сайте администратора?

Ответы [ 3 ]

2 голосов
/ 19 апреля 2009

Если нет существующих виджетов, которые делают то, что вы хотите (и я не думаю, что есть), то вам нужно написать свой собственный. К сожалению, документация Django не показывает вам, как это сделать, но это не сложно понять, посмотрев на исходный код forms/widgets.py, скопировав существующий виджет и изменив его.

2 голосов
/ 19 июня 2009

Я полагаю, что установка raw_id_fields в поле manytomany действительно выводит виджет TextInput с разделенным запятыми списком идентификаторов. Вы можете просто переопределить это в admin.py, в соответствующей ModelForm и принудительно использовать виджет TextArea.

1 голос
/ 19 апреля 2009

В Admin вы можете использовать фильтр по горизонтали и / или фильтр по вертикали :

class MyModelAdmin(admin.ModelAdmin):
    filter_horizontal = ['many_to_many_field_name']
    filter_horizontal = ['another_many_to_many_field_name']

документ

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