from otree.api import * class C(BaseConstants): NAME_IN_URL = 'Soziodemographie' PLAYERS_PER_GROUP = None NUM_ROUNDS = 1 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): age = models.IntegerField(min=1960, max=2006, doc="age in years") gender = models.IntegerField(choices=[[1, 'männlich'], [2, 'weiblich'], [3, 'divers']], widget=widgets.RadioSelectHorizontal) studies = models.IntegerField(choices=[[1, 'Rechtswissenschaften'], [2, 'Volkswirtschaft'], [3, 'Sozialwissenschaft'], [4, 'Betriebswirtschaft'], [5, 'Medizin'], [6, 'Erziehungswissenschaft'], [7, 'Geisteswissenschaft'], [8, 'Informatik'], [9, 'Mathematik'], [10, 'Naturwissenschaft'], [11, 'Psychologie'], [12, 'Bewegungswissenschaften'], [13, 'Sonstiges']], doc="field of studies") semester = models.IntegerField(min=0, max=35, doc="semester") work = models.IntegerField(choices=[[1, 'Ja'], [2,'Nein']]) bafog = models.IntegerField(choices=[[1, 'Ja'], [2,'Nein']]) education = models.IntegerField(choices=[(1, 'kein Abschluss'), (2, 'Hauptschulabschluss'), (3, 'Realschulabschluss'), (4, 'Abitur'), (5, 'Bachelorabschluss'), (6, 'Masterabschluss'), (7, 'Promotion'), (8, 'Professur')]) income = models.IntegerField(choices=[(1, 'weniger als 1.000 Euro'), (2, 'zwischen 1.000 - 2.000 Euro'), (3, 'zwischen 2.001 - 3.000 Euro'), (4, 'zwischen 3.001 - 4.000 Euro'), (5, 'mehr als 4.000 Euro')]) nationality = models.StringField() religion = models.StringField() party_preferences = models.IntegerField( choices=[ [1, "Extrem links"], [2, "Links"], [3, "In der Mitte"], [4, "Rechts"], [5, "Extrem rechts"], [6, "Keine Angabe"], ] ) #Auszahlung paypal = models.StringField(choices=[(1, 'Ja'), (2, 'Nein')]) name= models.StringField(blank=True) address = models.StringField(blank=True) # PAGES class Soziodemographie(Page): form_model = 'player' form_fields = ['age', 'gender', 'studies', 'semester', 'work', 'bafog', 'education', 'income', 'nationality', 'religion', 'party_preferences'] class Auszahlung(Page): form_model = 'player' form_fields = ['paypal','name', 'address'] class Results(Page): pass page_sequence = [Soziodemographie, Auszahlung, Results]