我知道有些问题可能与其他NoReverseMatch错误类似,但它不是
我在Django上使用Djangae Framework来支持Google Appengine。我创建了一个Custom GaeDatastoreUser,扩展了GaeAbstractBaseUser,并使用admin.site.register()
注册了模型。
models.py
class ChatUser(GaeAbstractBaseUser, PermissionsMixin):
# ID Constants
class Meta:
app_label = "chat_auth"
swappable = 'AUTH_USER_MODEL'
verbose_name = _('chat user')
verbose_name_plural = _('chat users')
app_id = models.CharField(_('app_id'), max_length=64, blank=True, null=True)
gcm_key = models.CharField(_('key'), max_length=128, blank=True, null=True, unique=True)
mobile = models.CharField(_('mobile'), max_length=10, default="", null=True)
在Django的管理站点上查看/admin/chat_auth/chatuser/
处的所有自定义用户列表正在运行,但每当我选择特定用户进行修改/删除时,我都会得到
NoReverseMatch at /admin/chat_auth/chatuser/5818821692620800/change/
Reverse for 'view_on_site' with arguments '()' and keyword arguments '{'object_id': 5818821692620800L, 'content_type_id': -4929820764642951528L}' not found. 1 pattern(s) tried: [u'admin/r/(?P<content_type_id>\\d+)/(?P<object_id>.+)/$']
正如您所看到的,我为任何自定义管理员用户获取了否定的ContentType ID (我不知道为什么)。我更改了AUTH_USER_MODEL,并完成了djangae's documentation所说的一切。
如果我尝试使用djangae的默认GaeDatastoreUser,这些链接可以正常工作,只有当我创建自定义用户时,这些链接才能正常工作。
我是否需要在urls.py中更改某些内容,但我不这么认为,否则他们会提供一些文档。
我确定这是因为负面的content_type_id,但创造这个的是我得到的东西
修改
的app.yaml
- url: /admin.*
script: {project}.wsgi.application
secure: always
login: admin