【发布时间】:2018-07-17 23:33:39
【问题描述】:
我现在尝试让我的网址与我的简单模型和视图一起工作太久了。有些东西我肯定不明白。
我希望创建一个类似于:
.../department/team,
我不使用部门对象的PK,而是使用名称。
我的模型看起来像:
class Department(models.Model):
name = models.CharField(max_length=50, blank=True, null=True)
def __str__(self):
return 'Department: ' + self.name
class Hold(models.Model):
name = models.CharField(max_length=50, blank=True, null=True)
department = models.ForeignKey(Department, on_delete=models.CASCADE)
我的视图看起来像(已更新):
class IndexView(generic.ListView):
template_name = 'index.html'
context_object_name = 'departments_list'
def get_queryset(self):
return Department.objects.all()
class DepartmentView(generic.DetailView):
model = Department
template_name="depdetail.html"
slug_field = "name"
slug_url_kwarg = "name"
我的网址如下所示:已更新
urlpatterns = [
path('', views.IndexView.as_view(), name='index'),
path('<name>', views.DepartmentView.as_view(), name='depdetail')
]
最后是我的 html:
<h1> Hello there {{ object.name }} student</h1> </br>
<b> Choose your team:<b> </br>
但是我不断收到page not found 或must be slug or pk..
我希望有人可以帮助我,这样我就可以解决这个问题。
更新 现在可以了:)谢谢您的回复。
【问题讨论】: