from otree.api import *
doc = """
Your app description
"""
class C(BaseConstants):
NAME_IN_URL = 'mysurvey'
PLAYERS_PER_GROUP = None
NUM_ROUNDS = 1
class Subsession(BaseSubsession):
pass
class Group(BaseGroup):
pass
class Player(BasePlayer):
treatment=models.IntegerField()
Q0=models.FloatField(label="")
Q1=models.FloatField(label="")
Q2=models.FloatField(label="")
Q3=models.FloatField(label="")
Q4=models.FloatField(label="")
Q5=models.FloatField(label="")
q_gender = models.CharField(initial=None,
choices=['62', '73', '29', '回答しない'],
verbose_name='(1) 何が見えますか。
',
widget=widgets.RadioSelect())
test = models.CharField(initial=None,
choices=['あひる', 'くじゃく', '金魚', '回答しない'],
verbose_name='(2) 何が見えますか。
',
widget=widgets.RadioSelect())
q_department = models.CharField(initial=None,
choices=['はい', 'いいえ', '回答しない'],
verbose_name='(3) あなたはアンカリング効果を知っていますか。',
widget=widgets.RadioSelect())
q_understanding = models.TextField(initial=None,
verbose_name='(4) (3)の質問で”はい”と選んだ人は、アンカリング効果について知っていることを書いてください。(自由記入)記入しない場合は「特になし」と記入してください。',
max_length=600)
q_max_payoff = models.CharField(initial=None,
choices=['はい', 'いいえ', '回答しない'],
verbose_name='(5) あなたは東京都千代田区の年平均気温を知っていましたか。',
widget=widgets.RadioSelect())
q_max_payoffsum = models.CharField(initial=None,
choices=['はい', 'いいえ', '回答しない'],
verbose_name='(6) あなたはカルシウムの融点を知っていましたか。',
widget=widgets.RadioSelect())
q_estimate_others = models.CharField(initial=None,
choices=['はい', 'いいえ', '回答しない'],
verbose_name='(7) あなたは立命館大学大学BKCの面積を知っていましたか。',
widget=widgets.RadioSelect())
q_decision_process = models.CharField(initial=None,
choices=['はい', 'いいえ', '回答しない'],
verbose_name='(8) あなたはエッフェル塔の高さを知っていましたか。',
widget=widgets.RadioSelect())
q_decision_change = models.CharField(initial=None,
choices=['はい', 'いいえ', '回答しない'],
verbose_name='(9) あなたは火星の赤道半径を知っていましたか。',
widget=widgets.RadioSelect())
q_best_strategy = models.TextField(initial=None,
verbose_name='(10) 赤色に対するイメージを書いてください。(自由記入)記入しない場合は「特になし」と記入してください。',
max_length=600)
risk = models.TextField(initial=None,
verbose_name='(11) 青色に対するイメージを書いてください。(自由記入)記入しない場合は「特になし」と記入してください。',
max_length=600)
ank = models.TextField(initial=None,
verbose_name='(12) その他ご意見・ご感想を書いてください。(自由記入)記入しない場合は「特になし」と記入してください。',
max_length=600)
q_age = models.IntegerField(initial=None,
verbose_name='あなたの年齢を教えてください',
choices = [ [i, str(i)] for i in range(18, 65)] +[[65, '回答しない']])
# FUNCTIONS
def creating_session(subsession: Subsession):
for p in subsession.get_players():
import random
p.treatment = random.choice([1,2,3])
# PAGES
class start(Page):
pass
class consent(Page):
pass
class MyPage(Page):
form_model = 'player'
form_fields = ['Q0']
class result3(Page):
form_model = 'player'
form_fields = ['Q1']
class result4(Page):
form_model = 'player'
form_fields = ['Q2']
class result5(Page):
form_model = 'player'
form_fields = ['Q3']
class result6(Page):
form_model = 'player'
form_fields = ['Q4']
class result7(Page):
form_model = 'player'
form_fields = ['Q5']
class Results(Page):
pass
class Results2(Page):
form_model = 'player'
form_fields = [
'q_gender',
'test',
'q_department',
'q_understanding',
'q_max_payoff',
'q_max_payoffsum',
'q_estimate_others',
'q_decision_process',
'q_decision_change',
'q_best_strategy',
'risk',
'ank']
class end(Page):
pass
page_sequence = [start, consent, MyPage, result3, result4, result5, result6, result7, Results2, end ]