2 форму на одной странице
django, forms, modelform, view
Всем привет.
в моем проекте каждый зарегистрированный пользователь имеит возможность поменять свой пароль
для реализации данного функционала, я переопределил стандартный PasswordChangeView, переопределение состоит в том что я просто указал "template_name" и "success_url"
все работает гуд.
теперь появилась нужда на той же странице с формой смены пароля добавить еше одну форму (со своим субмитом) , связанное с одним полем моделью пользователя, тип данного поля:
user_status = models.IntegerField(default=0, blank=True, null=True, choices=TRAIDER_STATUS) где TRAIDER_STATUS это 3 варианта.
в итоге получается что на одной странице есть 2 формы связанные с моделью пользователя и у каждой формы есть своя кнопка субмит
обработка данной страницы, как я понимаю, делается путем во первых надо понять какой субмит нажали (те какая из форм сработала) и потом включить логику о обработки данного субмита.
Может кто посоветовать как реализовать или скинуть какие то ссылки на реализацию ?????
всем заранее спасибо
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!
Пікірлер
- Ora Iro
- Жел. 24, 2024, 6:38 Т.Ж.
C++ - Тест 001. Первая программа и типы данных
- Нәтиже:40ұпай,
- Бағалау ұпайлары-8
- Akiv Doros
- Қар. 11, 2024, 2:58 Т.Қ.
C++ - Тест 004. Указатели, Массивы и Циклы
- Нәтиже:50ұпай,
- Бағалау ұпайлары-4
- molni99
- Қаз. 26, 2024, 1:37 Т.Ж.
C++ - Тест 004. Указатели, Массивы и Циклы
- Нәтиже:80ұпай,
- Бағалау ұпайлары4
Добрый день.
Чтобы понять, какой сабмит нажали, можно добавить имя к кнопке, например у меня есть два действия для сохранения статьи, ситуация похожая как у вас, просто в одной форме.
Здесь есть save и publish
А потом во view я просто делаю проверку
а можно просто сделать вторую форму с разделением обработчиков
или можно даже без экшенов в форме:
в посте прилетит содержимое только той формы, к которой сабмит относится
если заполнена форма смены пароля, вторая форма просто будет не валидна и код не выполнится и наоборот