from otree.api import * doc = """ Survey """ class C(BaseConstants): NAME_IN_URL = 'survey' PLAYERS_PER_GROUP = None NUM_ROUNDS = 1 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): age = models.IntegerField(label='Wie alt sind Sie?', min=16, max=99) gender = models.StringField( choices=['Männlich', 'Weiblich', 'Divers', 'Keine Angabe'], label='Welchem Geschlecht fühlen Sie sich zugehörig?', widget=widgets.RadioSelect, ) education = models.StringField( choices=['Berufsqualifizierender Abschluss', 'Fachabitur', 'Abitur', 'Bachelor', 'Master', 'Doktor/PhD'], label='Was ist Ihr höchster Bildungsabschluss? (Bitte nur bereits erzielte Abschlüsse angeben)', widget=widgets.RadioSelect, ) faculty = models.StringField( blank=True, label='An welcher Fakultät studieren Sie im Hauptfach?', choices=['Katholisch-Theologische Fakultät', 'Wirtschaftswissenschaftliche Fakultät', 'Juristische Fakultät', 'Philosophisch-Sozialwissenschaftliche Fakultät', 'Philologisch-Historische Fakultät', 'Mathematisch-Naturwissenschaftlich-Technische Fakultät', 'Fakultät für angewandte Informatik', 'Medizinische Fakultät'], ) risk = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'], label='Sind Sie im Allgemeinen ein risikobereiter Mensch oder versuchen Sie, Risiken zu vermeiden? (Von 0 = Gar nicht risikobereit bis 10 = Sehr risikobereit)', widget=widgets.RadioSelectHorizontal, ) feedback = models.LongStringField( blank=True, label='Haben Sie noch weitere Kommentare oder Anmerkungen?', ) likert_response1 = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7'], label='Ich wollte meine Auszahlung maximieren, unabhängig von der Entscheidung des anderen Teilnehmenden.', widget=widgets.RadioSelectHorizontal, ) likert_response2 = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7'], label='Ich wollte die Gesamtauszahlung (meine und die vom anderen Teilnehmenden) maximieren.', widget=widgets.RadioSelectHorizontal, ) likert_response3 = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7'], label='Ich wollte die Auszahlung des anderen Teilnehmenden maximieren.', widget=widgets.RadioSelectHorizontal, ) likert_response4 = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7'], label='Ich habe meine Entscheidung dem Verhalten des anderen Teilnehmenden angepasst.', widget=widgets.RadioSelectHorizontal, ) likert_response5 = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7'], label='In der letzten Runde wollte ich nicht mehr mit dem anderen Teilnehmenden kooperieren.', widget=widgets.RadioSelectHorizontal, ) likert_response1a = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7'], label='Ich wollte meine Auszahlung maximieren, unabhängig von der Entscheidung des anderen Teilnehmenden.', widget=widgets.RadioSelectHorizontal, ) likert_response2a = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7'], label='Ich wollte die Gesamtauszahlung (meine und die vom anderen Teilnehmenden) maximieren.', widget=widgets.RadioSelectHorizontal, ) likert_response3a = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7'], label='Ich wollte die Auszahlung des anderen Teilnehmenden maximieren.', widget=widgets.RadioSelectHorizontal, ) likert_response4a = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7'], label='Ich habe meine Entscheidung dem Verhalten des anderen Teilnehmenden angepasst.', widget=widgets.RadioSelectHorizontal, ) likert_response5a = models.IntegerField( choices=['1', '2', '3', '4', '5', '6', '7'], label='In der letzten Runde wollte ich nicht mehr mit dem anderen Teilnehmenden kooperieren.', widget=widgets.RadioSelectHorizontal, ) class Survey(Page): form_model = 'player' form_fields = ['age', 'gender', 'education', 'faculty', 'risk', 'feedback'] class Likert(Page): form_model = 'player' form_fields = ['likert_response1', 'likert_response2', 'likert_response3', 'likert_response4', 'likert_response5'] class Likert2(Page): form_model = 'player' form_fields = ['likert_response1a', 'likert_response2a', 'likert_response3a', 'likert_response4a', 'likert_response5a'] class SurveyWaitPage(WaitPage): pass class Ende(Page): pass page_sequence = [Survey]