0
ユーザを追加してユーザをグループに割り当てようとしています。以下は、ユーザーを追加するために動作しますが、私が指示された行のコメントを外すと、私は以下のエラーを受け取ります。ユーザー(ur)がグループに追加されるようにエラーを取り除くにはどうすればよいですか?ご協力いただきありがとうございます!Python ShellグループにDjango管理者を追加してください
# 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, '[email protected]', 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()
あなたのプログラムをdjangoのpythonシェルから実行してください:python ./manage.py shell –
私はこれを試しました:python manage.py shell。その後、次の行>>> passuserstack.py johndoeで、SyntaxError:johndoeのeを指す無効な構文が表示されます。私はあなたを正しく理解しているかどうかわからない。 – Sandra
申し訳ありませんが、私はあなたがプログラムを実行することを忘れています。多分シェルに引数としてファイルを与えることができますが、わかりません –