django 自定义 User 之后, rest framework 网页调试页面无法登陆

2015-07-12 14:19:31 +08:00
 shiziwen

现在遇到了一个问题,django自定义User之后,rest framework网页调试页面无法登陆。

django rest framework默认会提供一个web调试页面,
如下图所示:

之后,我定义了自己的User Model。
然后再登录rest framework提供的页面时,没有报错,但也没有登录成功。
如下图所示(右上角一直是“Log in”):

但是使用APIClient进行认证测试的时候,结果是正常的。
例如,permission_classes = (permissions.IsAdminUser,)(这里需要Admin权限的用户访问)
然后登录admin的账号,client.force_authenticate(user=user)
可以访问相应的API。
如果使用非admin账户进行测试的时候,会报认证错误的提示:

{u'detail': u'You do not have permission to perform this action.'}

是不是自定义了User Model之后,rest的相关配置也需要修改,才能在其提供的web页面正常登录?
多谢。

1963 次点击
所在节点    问与答
4 条回复
virusdefender
2015-07-12 14:20:53 +08:00
我之前这么干过没问题啊 你在settings里面设置AUTH_USER_MODEL了么
shiziwen
2015-07-12 14:59:03 +08:00
@virusdefender
AUTH_USER_MODEL = 'myuser.MyUser'

这个已经设置过了。
pixstone
2015-07-12 21:18:16 +08:00
你已经设定成。isAdminUser了 不是admin访问API自然报错
shiziwen
2015-07-13 14:09:36 +08:00
@pixstone
APIClient不是admin的时候,访问会报错,这是正常的。
我的问题是,rest提供的页面无法登录。
多谢。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/205120

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX