【发布时间】:2014-01-29 19:37:23
【问题描述】:
我收到这个错误
/author/list/4 处的类型错误 super(type, obj): obj 必须是 type 的实例或子类型
异常位置:/home/ronald/best/A2/0124/vort/larb/views.py 在 get_context_data 中,第 140 行
context = super(AuthorCreate, self).get_context_data(**kwargs)
url.py
url(r'^author/list/(?P<user_id>\d+)$', AuthorList.as_view(), name='author_list' ),
列表视图的views.py
class AuthorList(LoginRequiredMixin, ListView):
template_name = 'authorList.html'
queryset = Author.objects.all()
def get_context_data(self, **kwargs):
context = super(AuthorCreate, self).get_context_data(**kwargs)
if int(self.kwargs['user_id']) != self.request.user.id:
raise PermissionDenied
return context
作者列表.html
{{ request.user.username}}
<ul>
{% for author in object_list %}
<li>{{ author.firstName }}
<a href="{% url "author_update" author.id %}">{{ author.firstName }}</a>
<a href="{% url "author_delete" author.id %}">delete</a>
</li>
{% endfor %}
</ul>
【问题讨论】:
标签: django django-views django-class-based-views