Переместите \Illuminate\Session\Middleware\StartSession::class
в глобальный массив $middleware
в App/Http/Kernel.php
.
Я знаю, что вы можете предварительно заполнить некоторые значения с помощью GET, это будет примерно так
http://localhost:8000/admin/app/model/add/?model_field=hello
У меня возникли некоторые проблемы с полями даты, но, возможно, это могло бы помочь вам.
Встроенная в Django функция prepopulated_fields жестко запрограммирована, чтобы ее нельзя было использовать для более общих целей.
Вам нужно написать свою собственную функцию Javascript, чтобы выполнить предварительное заполнение. Лучший способ включить его в страницу администратора - включить его во внутренний класс Media пользовательской формы или Widget . Затем вам нужно будет настроить свой подкласс ModelAdmin для использования пользовательской формы или виджета. Наконец, вам нужно будет визуализировать некоторый встроенный Javascript вместе с каждым предварительно заполненным полем, чтобы зарегистрировать обработчик onchange и сообщить ему, из какого другого поля нужно заполнить; Я хотел бы сделать это через пользовательский виджет. Чтобы сделать его красивым и декларативным, вы можете использовать пользовательский атрибут ModelAdmin (похожий на prepopulated_fields) и переопределить ModelAdmin.formfield_for_dbfield, чтобы создать виджет и передать информацию о том, из какого поля он должен предварительно заполняться.
Этот вид взлома администратором почти всегда возможен, но (как вы можете судить из этого замысловатого резюме) редко бывает простым, особенно если вы стараетесь, чтобы ваш код был хорошо инкапсулирован.
Вы можете переопределить стандартное поле администратора django, заменив его полем формы по вашему выбору.
Отметьте это: Добавьте пользовательскую проверку для администратора
я также хотел бы иметь текстовое поле, которое автоматически запускается с чего-то как "Привет, мое имя является автором".
Выезд документы в: http://docs.djangoproject.com/en/dev/ref/models/fields/#default
Вы могли иметь CharField () или TextField () в Вашей модели и установить эту опцию, которая установит текст по умолчанию. 'значение по умолчанию' может также быть вызываемой функцией.
Что-то как: модели. CharField (max_length=250, значение по умолчанию = "текст По умолчанию")
Работа с слагом осуществляется с помощью javascript.
Таким образом, вы должны переопределить шаблоны в админке, а затем заполнить поля javascript. Дата должна быть тривиальной, но я не знаю, как вы должны получить имя зарегистрированного пользователя для сценария (не то, чтобы я очень усердно думал, но вы понимаете, что это дрейф :)).