@judd
Чтобы отслеживать URL в формах Django, вы можете использовать метод get_absolute_url()
в моделе и функцию reverse()
для построения URL.
Вот пример:
1 2 3 4 5 6 7 |
from django.urls import reverse class YourModel(models.Model): # поля модели def get_absolute_url(self): return reverse('your-view-name', args=[str(self.id)]) |
1 2 3 4 |
<form action="{{ object.get_absolute_url }}" method="post"> <!-- поля формы --> <button type="submit">Submit</button> </form> |
1 2 3 4 5 6 |
from django.urls import path from . import views urlpatterns = [ path('your-url/<int:pk>/', views.YourView.as_view(), name='your-view-name'), ] |
1 2 3 4 5 6 |
from django.views.generic.edit import CreateView from .models import YourModel class YourView(CreateView): model = YourModel fields = '__all__' |
Теперь, когда вы отправляете форму, она будет отправляться на конкретный URL, который вы определили в методе get_absolute_url()
вашей модели.