【发布时间】:2019-07-14 15:52:20
【问题描述】:
我有一个使用 auth 模块的 Python 3.7 / Django 项目。我想写一个脚本来创建用户,但我很困惑如何去做。我已经创建了这个
from django.contrib.auth.models import User
import sys
firstarg=sys.argv[1]
secondarg=sys.argv[2]
user=User.objects.create_user(firstarg, password=secondarg)
user.is_superuser=False
user.is_staff=False
user.save()
我想将用户名和密码参数传递给这个脚本。我尝试了以下
localhost:dental davea$ source venv/bin/activate; python manage.py shell < create_users.py "user1" "password"
/Users/davea/Documents/workspace/dental/venv/lib/python3.7/site-packages/psycopg2/__init__.py:144: UserWarning: The psycopg2 wheel package will be renamed from release 2.8; in order to keep installing from binary please use "pip install psycopg2-binary" instead. For details see: <http://initd.org/psycopg/docs/install.html#binary-install-from-pypi>.
""")
usage: manage.py shell [-h] [--no-startup] [-i {ipython,bpython,python}]
[-c COMMAND] [--version] [-v {0,1,2,3}]
[--settings SETTINGS] [--pythonpath PYTHONPATH]
[--traceback] [--no-color]
manage.py shell: error: unrecognized arguments: user1 password
但是您可以看到它导致的错误。如何从命令行调用我的脚本,同时创建它应该运行的虚拟环境?
【问题讨论】:
标签: django python-3.x shell authentication command-line