from .loadGeneric import LoadGeneric from backend_app.models.university import University from backend_app.models.university import UniversityDri from backend_app.models.university import UniversityInfo from backend_app.models.university import UniversitySemestersDates from backend_app.models.country import CountryScholarship from backend_app.models.country import Country from backend_app.models.university import UniversityTaggedItem from backend_app.models.currency import Currency from backend_app.models.tag import Tag from datetime import datetime class LoadUniversityEx(LoadGeneric): def __init__(self, admin): self.admin = admin def load(self): EPFL = University.objects.get(acronym="EPFL") CHF = Currency.objects.get(pk="CHF") ACCOMMODATION_TAG = Tag.objects.get(name="accommodation") SWITZERLAND = Country.objects.get(pk="CH") univ_dri_1 = UniversityDri( title="Cours en anglais", importance_level="+", comment="Les cours de master en computer science sont 100% en anglais", ) univ_dri_1.save() univ_dri_1.universities.add(EPFL) self.add_info_and_save(univ_dri_1, self.admin) univ_info = UniversityInfo.objects.get(university=EPFL) univ_info.cost_exchange = 0 univ_info.costs_currency = CHF self.add_info_and_save(univ_info, self.admin) usd = UniversitySemestersDates.objects.get(university=EPFL) usd.autumn_begin = datetime.strptime("17/09/2018", "%d/%m/%Y") usd.autumn_end = datetime.strptime("29/01/2019", "%d/%m/%Y") usd.useful_links = [ { "url": "https://memento.epfl.ch/academic-calendar", "description": "Site de l'EPFL", } ] self.add_info_and_save(usd, self.admin) country_scholarship = CountryScholarship( title="Swiss European Mobility Programme", type="Bourse du gouvernement suisse", currency=CHF, frequency="s", amount_min=2200, amount_max=2200, comment="Bourse attribuée de manière automatique.", ) country_scholarship.save() country_scholarship.countries.add(SWITZERLAND) self.add_info_and_save(country_scholarship, self.admin) univ_tag_1 = UniversityTaggedItem( university=EPFL, tag=ACCOMMODATION_TAG, title="C'est compliqué de trouver un logement", comment="Mon commentaire.", importance_level="++", ) self.add_info_and_save(univ_tag_1, self.admin)