在 Django 中创建一个虚拟用户(在启动时?)
In Django create a dummyuser (on startup?)
我的目标是在数据库中拥有一个虚拟用户。我已经写了下面的函数
def get_test_user():
user, created = get_user_model.objects.get_or_create(username=TESTUSER_USERNAME)
user.set_password(TESTUSER_PASSWORD)
user.save
但是我应该在哪里以及如何调用它来实现我的目标。我知道测试 django 会创建自己的数据库,并且有创建测试用户的功能。但这实际上也应该 运行 在生产数据库中。
您可以创建data migration,例如:
from django.contrib.auth.hashers import make_password
from django.db import migrations
def create_user(apps, schema_editor):
User = apps.get_registered_model('auth', 'User')
user = User(
username='user',
email='user@mail.com',
password=make_password('pass'),
is_superuser=False,
is_staff=False
)
user.save()
class Migration(migrations.Migration):
dependencies = [
('auth', '0001_initial')
]
operations = [
migrations.RunPython(create_user),
]
我的目标是在数据库中拥有一个虚拟用户。我已经写了下面的函数
def get_test_user():
user, created = get_user_model.objects.get_or_create(username=TESTUSER_USERNAME)
user.set_password(TESTUSER_PASSWORD)
user.save
但是我应该在哪里以及如何调用它来实现我的目标。我知道测试 django 会创建自己的数据库,并且有创建测试用户的功能。但这实际上也应该 运行 在生产数据库中。
您可以创建data migration,例如:
from django.contrib.auth.hashers import make_password
from django.db import migrations
def create_user(apps, schema_editor):
User = apps.get_registered_model('auth', 'User')
user = User(
username='user',
email='user@mail.com',
password=make_password('pass'),
is_superuser=False,
is_staff=False
)
user.save()
class Migration(migrations.Migration):
dependencies = [
('auth', '0001_initial')
]
operations = [
migrations.RunPython(create_user),
]