Dav*_*ddd 3 django django-models django-authentication django-cms django-users
环境:Django 1.5.1 + Django CMS 2.4.1 + Zinnia最新+我的自定义应用+自定义Django CMS插件
基本上我可以扩展默认的Django(1.5.X)用户模型,如NetTuts +上的Django Ribbit Tutorial
要么
在段落中替换完全自定义的模型,如Django Dev doc或Django2Scoops示例:"处理用户模型"
为了测试我决定使用子类AbstractUser来自Django2Scoops书:"如果您喜欢Django的用户模型字段,请选择此选项,但需要额外的..fields."
但是我有以下错误:
notification.noticesetting:'user'定义了与模型'auth.User'的关系,该模型已被换出.更新关系以指向settings.AUTH_USER_MODEL.cmsplugin_zinnia.latestentriesplugin:'authors'定义了与模型'auth.User'的关系,该模型已被换出.更新关系以指向settings.AUTH_USER_MODEL.
cms.pageuser:'created_by'定义了与模型'auth.User'的关系,该模型已被换出.更新关系以指向settings.AUTH_USER_MODEL.cms.pageusergroup:'created_by'定义了与模型'auth.User'的关系,该模型已被换出.更新关系以指向settings.AUTH_USER_MODEL.
经过几个小时的阅读和测试,我找到了
正如错误消息所示 - 您需要更新关系以指向settings.AUTH_USER_MODEL.第二个错误("模型已被换出......")是您直接引用用户模型这一事实的副作用.更改ForieignKey引用后,第三个错误将消失.我们已尽力确保顺利过渡到新的用户模型,但它不能完全透明.应用编写者需要将他们的应用更新为1.5兼容.基本上,如果Django 1.4应用程序包含对用户的硬编码外键引用,则它与Django 1.5不会100%兼容.拜托,你能举个更多例子吗?
和Django/Python:更新关系以指向settings.AUTH_USER_MODEL
在settings_example.py中,您有AUTH_USER_MODEL ='users.User'.但是你使用的应用程序 - menu.bookmark--与django.contrib.auth.User有关 - 你不能同时拥有这两者.设置AUTH_USER_MODEL意味着您要用自己的内置Django用户模型替换它.有关 详细信息,请参见 http://procrastinatingdev.com/django/using-configurable-user-models-in-django-1-5/.
但我不明白我该怎么解决这个问题.
我需要什么:
- 用户与学院班级(一个学院 - >更多用户)相关联
- 用户或机构可以拥有不同的权限,并查看不同的django cms页面/插件.
- 用户的几个字段.
Subclass AbstractUser是正确的吗?
如何解决"换出"错误?
我应该创建类似于OpenTreeMap代码的东西
这个代码是不是已经弃用了?
谢谢!
有非常简单的解决方案.只需在导入CMSPlugin之前注册您的自定义用户.例:
Run Code Online (Sandbox Code Playgroud)from django.db import models from django.contrib.auth import models as auth_models from django.contrib.auth.models import AbstractUser class User(AbstractUser): telephone = models.CharField(max_length=100) email = models.CharField(max_length=100) auth_models.User = User from cms.models import CMSPlugin
| 归档时间: |
|
| 查看次数: |
3665 次 |
| 最近记录: |