diff --git a/README.md b/README.md index b8554f8d511a54ea22913d9d8ffe3fde5d7a8778..5db6a7f89ddcd4bffbf09124554879a61b6d3193 100644 --- a/README.md +++ b/README.md @@ -74,9 +74,10 @@ If successful, you can now see the running server in your browser at `http://127 ## Populate the database with test data To populate the database with some test data run ``` -python manage.py seed_db +python manage.py seed_db [-y] [--seed SEED] ``` All the existing data from your database will be lost! +Run `python manage.py seed_db --help` for more information. ## Use the django admin interface to view and edit data during development If you started the server as described above, you can access the django admin interface on diff --git a/unisportomat/quiz/management/commands/seed_db.py b/unisportomat/quiz/management/commands/seed_db.py index 5ad94a29e500f90713e1a16219a090a57ba6f641..7e6fc5b7434b946091af5a22352b72761ea1ffbf 100644 --- a/unisportomat/quiz/management/commands/seed_db.py +++ b/unisportomat/quiz/management/commands/seed_db.py @@ -39,6 +39,13 @@ class Command(BaseCommand): help="Don't ask to confirm database flushing", ) + parser.add_argument( + "--seed", + type=int, + default=42, + help="Optional seed for random generator. Defaults to 42", + ) + def handle(self, *args, **options): """Create some objects for all models""" @@ -49,6 +56,9 @@ class Command(BaseCommand): admin = get_user_model().objects.create_superuser("admin", password="password") admin.save() + # Seed random generator to make this script deterministic + random.seed(options["seed"]) + # Create sports sports_names = [ "After Work Fitness",