2016-10-07 1 views
0

Моя цель состоит в том, чтобы иметь один dummyuser в базе данных. Я уже написал следующую функцию:В Django создать dummyuser (при запуске?)

def get_test_user(): 
    user, created = get_user_model.objects.get_or_create(username=TESTUSER_USERNAME) 
    user.set_password(TESTUSER_PASSWORD) 
    user.save 

Но где и как я могу назвать это для достижения своей цели. Я знаю, что тестирование django создаст собственную базу данных и что есть функции для создания тестовых пользователей. Но это должно действительно работать и в производственной базе данных.

ответ

0

Вы можете создать 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='[email protected]', 
     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), 
    ] 
Смежные вопросы