This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
"""Initialize local development credentials once; never used in production."""
|
||||
|
||||
import os
|
||||
import secrets
|
||||
from pathlib import Path
|
||||
|
||||
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "server.settings")
|
||||
import django
|
||||
|
||||
django.setup()
|
||||
from django.conf import settings
|
||||
from django.contrib.auth.models import User
|
||||
|
||||
from finance.models import Membership, Organization
|
||||
|
||||
if settings.PRODUCTION:
|
||||
raise SystemExit("Use the bootstrap command for production")
|
||||
if not User.objects.filter(username="admin").exists():
|
||||
password = secrets.token_urlsafe(18)
|
||||
org = Organization.objects.create(name="集团财务中心")
|
||||
user = User.objects.create_user(username="admin", password=password)
|
||||
Membership.objects.create(user=user, organization=org, role="admin")
|
||||
path = Path("var/local-access.txt")
|
||||
path.write_text(f"本地地址:http://127.0.0.1:8000\n用户名:admin\n密码:{password}\n", encoding="utf-8")
|
||||
path.chmod(0o600)
|
||||
print("Created admin; credentials in var/local-access.txt (mode 0600)")
|
||||
else:
|
||||
print("Administrator already exists; unchanged")
|
||||
Reference in New Issue
Block a user