Как мне получить и отправить POST из разных URL-адресов в одно и то же представление на основе классов в моем проекте djPython

Программы на Python
Ответить
Anonymous
 Как мне получить и отправить POST из разных URL-адресов в одно и то же представление на основе классов в моем проекте dj

Сообщение Anonymous »

Я работаю над курсовой работой, в которой мне нужно создать серверную часть Django с маршрутами API и шаблонными маршрутами. В дескрипторе мне были указаны маршруты, по которым должен следовать проект. Я создал представление на основе классов, которое успешно создает альбомы. Однако проблема, которую я вижу, заключается в том, что моя реализация GET и POST в /albums/new. Где дескриптор говорит, что мне нужно GET из /albums/new и POST в /albums, чтобы создать новый альбом. Я искал везде в Интернете, чтобы выяснить, как это реализовать, и ничего не нашел. Затем лектор дал нам совет: POST /albums/new/ можно сопоставить с POST /albums/ с помощью диспетчера URL-адресов Django, где он вызывает тот же класс или метод для POST. Но так и не удалось ничего найти.
Вот мой код:
views.py представление создания альбома
class AlbumCreateView(SuccessMessageMixin, generic.edit.CreateView):
form_class = AlbumForm
template_name = 'label_music_manager/update_album.html'
success_message = _('AlbumCreated')

def get_success_url(self):
return self.object.get_absolute_url()

def dispatch(self, request):
if not check_editor(request.user):
return redirect('album_list')
return super().dispatch(request)

шаблоны URL-адресов моего представления (я создал временное исправление, благодаря которому я могу отправлять POST в /albums, вызывая одно и то же представление, но я не думаю, что это предназначено, потому что они бы не разделили его )
path('albums/', views.AlbumCreateView.as_view(), name='create_album'),
path('albums/new/', views.AlbumCreateView.as_view(), name='new_album'),


Подробнее здесь: https://stackoverflow.com/questions/792 ... -in-my-dja
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»