我试图更新一个有外键字段的视图的记录,由于这个我得到了一个错误,因为我试图更新另一个没有外键字段的模型,它工作得很好。在
还有其他类似的问题,但就我而言,我通过了pk。在
网址.py
urlpatterns = [
url(r'^info/(?P<studentpk>\d+)/update/$', views.updatestudent.as_view(), name="updatestudent"),
]
视图.py
^{pr2}$更新学生.html
<form action="" method="post">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Update" />
</form>
模型.py
class Student(models.Model):
classfk = models.ForeignKey(Class)
name = models.CharField(max_length=100)
birth_date = models.DateField('Birthdate')
def __str__(self):
return self.name
错误
AttributeError: Generic detail view updatestudent must be called with either an object pk or a slug.
Django不希望您在URL模式中使用
studentpk
。最简单的修复方法是使用pk
。在如果您真的想使用
^{2}$studentpk
,那么在视图中设置{a1}。在注意,在Python中,推荐的样式是将基于类的视图命名为
UpdateStudent
,将表单类命名为StudentForm
。在相关问题 更多 >
编程相关推荐