我是Django的新手,如果有人帮助我,我会很高兴。我在命令行中创建用户,而我的用户也没有“添加”权限和其他defult(删除,更改)权限!
>>> b = User.objects.create_user('mina','[email protected]','123456')
>>> b.save()
>>> b.has_perm('student.add_user')
False
这是我设置的已安装应用程序:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'student',
)
和我的模型“用户”:
class user(models.Model):
user_name=models.CharField(max_length=200,primary_key=True)
password=models.IntegerField(max_length=10)
user_id=models.IntegerField(max_length=3)
name=models.CharField(max_length=200)
email=models.EmailField(max_length=200)
phone=models.IntegerField(max_length=10)
task=models.ForeignKey(task)
class Meta:
unique_together = ('user_id', 'task')
def __unicode__(self):
return u'name:%s--------IDnumber:%s' % (self.name,str(self.user_id))
为什么用户没有这些权限?并且我该怎么做才能添加该权限?对不起,我的英语不好。
只有超级用户拥有所有权限。权限应添加到非超级用户。
from django.contrib.auth.models import Permission
...
b.user_permissions.add(Permission.objects.get(content_type__app_label='student',
codename='add_user'))
b.user_permissions.add(Permission.objects.get(content_type__app_label='student',
codename='change_user'))
b.user_permissions.add(Permission.objects.get(content_type__app_label='student',
codename='delete_user'))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句