Уведомления

Группа в Telegram: @pythonsu

#1 Март 1, 2011 18:34:15

Challenger
От:
Зарегистрирован: 2011-02-21
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Заполнение ManyToManyField в админке

Всем здравия!

Необходимо заполнить поле ManyToMany в админке (добавить дополнительные значения). Вопрос: как это изящнее и компактнее сделать?

Заранее спасибо! =)



Офлайн

#2 Март 2, 2011 10:29:08

fth
От:
Зарегистрирован: 2010-07-26
Сообщения: 105
Репутация: +  0  -
Профиль   Отправить e-mail  

Заполнение ManyToManyField в админке

Зажать Ctrl и щёлкнуть на нужные значения? В help_text же об этом прямо вроде говориться. (это вообще-то стандартное поведение select multipile)



Офлайн

#3 Март 2, 2011 13:26:26

Challenger
От:
Зарегистрирован: 2011-02-21
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Заполнение ManyToManyField в админке

fth
Зажать Ctrl и щёлкнуть на нужные значения? В help_text же об этом прямо вроде говориться. (это вообще-то стандартное поведение select multipile)
Не, я не про это.
Есть у нас ManyToManyField в модели. Как изменить его значения (choices), чтобы при редактирование\добавление объекта в админке там появлялись дополнительные значения?



Офлайн

#4 Март 2, 2011 16:22:49

Challenger
От:
Зарегистрирован: 2011-02-21
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Заполнение ManyToManyField в админке

Проблема решена:

class CatLevel_2_Admin(admin.ModelAdmin):
list_display = ( ‘name’, ‘priority’, )
filter_horizontal = ('items',)

def formfield_for_manytomany(self, db_field, request, **kwargs):
if db_field.name == “items”:
kwargs = CatLevel_3.objects.all() # Здесь меняем как нам надо.
return super(CatLevel_2_Admin, self).formfield_for_manytomany(db_field, request, **kwargs)

Был ещё второй вариант переопределить get_query_set у CatLevel_3



Офлайн

#5 Ноя. 2, 2015 16:47:27

Topacio
Зарегистрирован: 2015-11-02
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Заполнение ManyToManyField в админке

Здравствуйте.

Хотелось бы возобновить тему. Задача у меня та же, что и у автора поста - добавить свои значения в выбранный список “Многие ко многим”. Второй день ищу ответ. Пришёл к этому же

def formfield_for_manytomany(self, db_field, request, **kwargs):
if db_field.name == items:
kwargs = CatLevel_3.objects.all() # Здесь меняем как нам надо.
но, поскольку kwargs - это словарь, нужно знать индекс, под которым надо писать это
CatLevel_3.objects.all()
В документации ответа нет. Помогите, пожалуйста.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version