Где сохраняется ID в автозаполняемых_полях django ModelAdmin?
Я переписываю некоторый интерфейс администрирования на django 2.2, в настоящее время использую функцию администрирования django autocomplete_fields. Проще говоря, у меня есть объект ModelAdmin OrderAdmin
, который имеет вложенные TabularInline ProductAdmin
: таблица переменной длины продуктов, которые могут быть добавлены в заказ. Каждый из этих держателей ProductAdmin
просто содержит ForeignKey для фактического класса продукта, с некоторыми другими атрибутами.
Теперь мне интересно: где django хранит id - ForeignKey - элемента, выбранного с помощью поля автозаполнения? Он не отмечает OPTION в selectbox как selected, и хотя на странице есть подозрительное скрытое поле ввода с #cashregisterproduct_set-0-id, оно не имеет никакого значения. Или есть какой-то специальный способ, как получить к нему доступ? Я думал добавить id в метод модели и парсинга __str__
, но это просто некрасиво.
Спасибо за совет.
EDIT: чтобы было на 100% понятно, откуда django получает ForeignKey объекта, выбранного через autoselect_field, при создании нового объекта из ModelAdmin?
Я заблуждался, думая, что этим управляет django. Доступ к выбранным данным можно получить, используя фреймворк select2:
selected_value = $('.myselectbox').select2().val();