django-rest-framework教程4(认证与权限)问题
在顺利完成了前面1-3的教程后,我接着按照这个教程(http://django-rest-framework.org/tutorial/4-authentication-and-permissions.html)继续学习,完成了到“为我们的用户模型添加端点”这一部分。
也就是说,我添加了这两行代码:“url(r'^users/$', views.UserList.as_view()), url(r'^users/(?P[0-9]+)/$', views.UserInstance.as_view()),”。
然后,我用“python manage.py runserver”这个命令启动了服务器,并在浏览器中输入了 http://127.0.0.1:8000/users/
,结果出现了以下错误信息:
(错误信息开始)
在 /users/ 处发生了 NameError 错误
提示:'User' 这个名字没有被定义
请求方式:GET
请求网址:http://127.0.0.1:8000/users/
Django 版本:1.4.3
异常类型:NameError
异常信息:'User' 这个名字没有被定义
异常位置:/home/user/tutorial/snippets/serializers.py 的 Meta 部分,第14行
(错误信息结束)
我是不是漏掉了什么?
我在 serializer.py 文件中的代码是:
from django.forms import widgets
from rest_framework import serializers
from snippets import models
class SnippetSerializer(serializers.ModelSerializer):
class Meta:
model = models.Snippet
fields = ('id', 'title', 'code', 'linenos', 'language', 'style')
class UserSerializer(serializers.ModelSerializer):
snippets = serializers.ManyPrimaryKeyRelatedField()
class Meta:
model = User
fields = ('id', 'username', 'snippets')
1 个回答
2
你需要引入Django的用户类。
from django.contrib.auth.models import User
现在这个引入的代码没有提到。我想这应该是需要的。