【发布时间】:2018-06-18 08:47:10
【问题描述】:
我正在使用APITestCase 在 django restframework 中测试我的序列化器模型。
这是我的结构:
class Usertest(APITestCase):
def test_userprofile_create(self):
user = User.objects.create(username='asghar',
password='4411652A',
email='ww@gmail.com',)
profile = UserProfile.objects.create(fullname='asghariiiiii',
phonenumber='9121345432',
address='bella',
user=user)
user.user_profile = profile
client = APIClient()
request = client.get('/user/create/')
data = UserCreateSerializer(user,
context={'request': request}).data
url = reverse('user-create')
response_create =client.post(url, data)
在我看来权限设置为AllowAny。
无需登录或 force_authenticate。
data = UserCreateSerializer(user, context={'request': request}).data AttributeError: 'HttpResponseNotFound' 对象没有属性 'build_absolute_uri'
如您所见,错误来自创建 data。首先我尝试删除 context,但此标题出现错误:
AssertionError:
HyperlinkedIdentityField需要序列化程序上下文中的请求。实例化序列化器时添加context={'request': request}。
【问题讨论】:
标签: django serialization django-rest-framework