如何将主键传递给 Django 中的视图?
how to pass a primary key to a view in django?
我正在尝试实现一个基于 class 的视图,它应该创建一个更新表单来更新我的模型表单,但我不知道如何将 pk 从我的 base.html 传递到我的视图:
viewvs.py:
from artdb.models import *
class UpdateForm(UpdateView):
print('updateform')
model=Date
fields=['activity']
template_name='updateForm.html'
updateForm.html:
{% extends "artdb/base.html" %}
{% block upd %}
<form action="" method="post">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Update">
</form>
{% endblock upd %}
base.html:
<p><a class="btn btn-secondary" href="{% url 'artdb:updateform' %}" role="button">update form »</a></p
{% block upd %}
{% endblock upd %}
urls.py:
urlpatterns = [
path('<pk>/updateform/',views.UpdateForm.as_view(),name='updateform'),
]
我认为 pk 应该在 base.html 中传递,但我不确定如何传递。有什么建议吗?
我想您现在可能已经知道了,但如果您还没有,请在应用 url.py 文件中像这样尝试:
urlpatterns = [
path('updateform/<int:pk>',views.UpdateForm.as_view(),name='updateform'),
]
我正在尝试实现一个基于 class 的视图,它应该创建一个更新表单来更新我的模型表单,但我不知道如何将 pk 从我的 base.html 传递到我的视图:
viewvs.py:
from artdb.models import *
class UpdateForm(UpdateView):
print('updateform')
model=Date
fields=['activity']
template_name='updateForm.html'
updateForm.html:
{% extends "artdb/base.html" %}
{% block upd %}
<form action="" method="post">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Update">
</form>
{% endblock upd %}
base.html:
<p><a class="btn btn-secondary" href="{% url 'artdb:updateform' %}" role="button">update form »</a></p
{% block upd %}
{% endblock upd %}
urls.py:
urlpatterns = [
path('<pk>/updateform/',views.UpdateForm.as_view(),name='updateform'),
]
我认为 pk 应该在 base.html 中传递,但我不确定如何传递。有什么建议吗?
我想您现在可能已经知道了,但如果您还没有,请在应用 url.py 文件中像这样尝试:
urlpatterns = [
path('updateform/<int:pk>',views.UpdateForm.as_view(),name='updateform'),
]