pythonshell向组添加Django管理员用户

2024-10-02 08:22:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图添加用户并将用户分配给组。下面的工作是添加用户,但是当我取消注释所示行时,我会得到下面所述的错误。如何消除错误,以便将用户(ur)添加到组中?谢谢你的帮助!

# This file is named passuserstack.py
# I call it by typing: python passuserstack.py johndoe
# to add a user named johndoe

import os
import sys

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "dmt.settings")
from django.contrib.auth.models import User, Group
from django.contrib.auth import authenticate, login

arg1 = sys.argv[1]

def loginuser(myuser=arg1):
    myuserpw = myuser + 'pw'

    # Check to see if that user exists 
    if ( User.objects.filter(username=myuser).exists() ):
        #do nothing
        mynote = "I am a returning user"
    else: 
        # create the user
        mynote = "I am a new user"
        ur = User.objects.create_user(myuser, 'notkeeping@email.com', myuserpw)
        ur.is_staff = True
        ur.save()
        # assign permissions by assigning to a group
        gp = Group.objects.get(name='NBI_graph_tool') 
        #gp.user_set.add(ur) 
        # when I uncomment the line just above this, I get the error :
        # raise AppRegistryNotReady("Models aren't loaded yet.")
        # django.core.exceptions.AppRegistryNotReady" Models aren't loaded yet.

if __name__ == "__main__":
    loginuser()

Tags: thetodjango用户importifobjectsis

热门问题