1to1 на модель CustomUser. Как мне отобразить поля основной модели и связанной в одной форме? Не могу найти в гугле инфу по 1to1 связи. Или не так ищу( Киньте ссылку где про это почитать.
Надо самому строить форму, на основе forms.Form
Правильно ли я понимаю: нужно добавлять поля в форму, которых нет в модели, и обрабатывать их во вьюхе отдельно?
Да. обрабатывать можно также в форме.
А можно ссылку на пример. Буду очень благодарен. Как обрабатывать в форме не понятно(
https://docs.djangoproject.com/en/3.1/topics/forms/modelforms/#the-save-method в этом методе доступны данные формы после валидации. Можешь делать с ними что нужно.
в clean() можно проверять данные и регистрировать ошибки в save() работать с пришедшими данными (метод будет вызван, если пройдена валидация)
Вы можете переопределить admin / change_form.html. Скопируйте версию из contrib.admin.templates в свой проект. Мой - myproject / templates / admin / change_form.html, но вы можете использовать /myproject/myapp/templates/admin/change_form.html. Затем отредактируйте копию и измените две ссылки на существующий тег шаблона, {% submit_row%}, чтобы они указывали на ваш собственный тег шаблона, {% my_template_tag%}. Создайте свой тег шаблона на {% submit_row%} contrib.admin, но отредактируйте HTML-шаблон, чтобы он содержал любые дополнительные кнопки, которые вы хотите отобразить.
Я нашел один простой способ добавить кнопки - добавить еще одну строку для настраиваемых кнопок. Создайте административный каталог в своем каталоге шаблонов в соответствии с вашими потребностями. Например, я обычно добавляю кнопки для определенных моделей в собственный шаблон. Создайте каталог "templates / admin / app / model /". Затем добавьте файл change_form.html. {% extends "admin / change_form.html"%} {% load i18n%} {% block submit_buttons_bottom%} <div class = "submit-row"> <input type = "button" value = "{% trans 'Другая кнопка'%}" name = "_ anotherbutton" /> </div> {{block.super}} {% endblock%} Код перед {{block.super}} основан на шаблоне submit_line.html, используемом тегом шаблона {% submit_row%}. Я предпочитаю этот метод, потому что он прост, но вам придется жить с другим рядом кнопок. Или это лучше?
dpaste.de
думаю, это пример подмены шаблона. Мне обычно лень весь {% submit_row %} менять, я добавлял свою кнопку в отдельном HTML блоке и настраивал отображение через CSS. Если было нужно, стоковые кнопки прятал через CSS.
templates/admin/account/account_action.html Почему у меня таких путей вообще нет? Или я чего-то не понимаю?
еще многое зависит от админки. У меня django-jet. В своей: изучи структруру в шаблонах
вот пример: https://github.com/django/django/blob/f9cfd346f0222d86bfbac26ef5455806965bae6b/django/contrib/auth/forms.py#L75
я тоже тебя не понял)
БОЛЬШОЕ СПАСИБО! Буду разбираться.
Обсуждают сегодня