WISVCH / dienst2

CH Dienstensysteem: administratie van leden en post
https://dienst2.ch.tudelft.nl
Other
4 stars 2 forks source link

LDB: Dummy data generator #112

Open jgadelange opened 9 years ago

jgadelange commented 9 years ago

To make testing in a realistic environment more easy a dummy data generator should be created.

jgadelange commented 8 years ago

https://github.com/Brobin/django-seed looks useful for this (needs fix for ForeignKey self reference though)

jgadelange commented 7 years ago

Other possibility, just add some fixtures

Or write a whole generation script by ourselves

GijsWeterings commented 7 years ago

@praseodym @jgadelange Loop hiermee tegen wat vreemde issues aan. Ik draai python manage.py flush en dan python manage.py load_ldb_dummy, en vervolgens zie ik soms bij het maken van een person django.db.utils.IntegrityError: duplicate key value violates unique constraint "ldb_organization_pkey". Maar dus niet altijd... heb al geprobeerd de sequence van de primary key te resetten, maar dat helpt niet.

Daarnaast moet ik nog uitvogelen hoe ik bij bijv een Student het person veld weer koppel aan een user... Ik zag bij Jeffrey's oude branch iets met seeder.faker, maar kan daar niet echt documentatie over vinden

jgadelange commented 7 years ago

Wat betreft de flush en dan opnieuw runnen: Geen idee, ik doe zelf altijd dropdb en createdb zodat ik met een hele verse db begin, maar het klinkt alsof hij zelf bedenkt welke pk hij toekent aan de dingen die hij aanmaakt. Dit zou gewoon automagisch moeten zijn..

Het is voor mij alweer een tijdje terug dat ik iets gedaan heb met django-seed (ik heb het ook alleen uitgeprobeerd met dit project), maar volgens mij zoekt hij automatisch een Person voor een Student bij het aanmaken (zolang je maar eerst persons maakt en dan students).

De seeder.faker is volgens mij een instantie van https://github.com/joke2k/faker/.

Wat ik me herinner is dat ik voor het begrijpen van hoe django-seed te gebruiken ik vooral in de source heb rondgekeken, samen met de readme