from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range, ) import random author = 'Your name here' doc = """ Your app description """ class Constants(BaseConstants): name_in_url = 'psyexp2' players_per_group = None num_rounds = 1 class Subsession(BaseSubsession): kadinCounter = models.IntegerField(initial = 0) erkekCounter = models.IntegerField(initial = 0) class Group(BaseGroup): pass class Player(BasePlayer): maleRatio = models.FloatField() femaleRatio = models.FloatField() totalGender = models.IntegerField() def genderCounter(self): if self.player.gender == ["kadın"]: Subsession.kadinCounter = Subsession.kadinCounter +1 else: Subsession.erkekCounter = Subsession.erkekCounter +1 def calculateGender(self): self.totalGender = Subsession.erkekCounter + Subsession.kadinCounter self.maleRatio = Subsession.erkekCounter / self.totalGender self.femaleRatio = Subsession.kadinCounter / self.totalGender playerid = models.IntegerField() def playerid_random(self): self.playerid = random.randint(0,2) consent = models.BooleanField( label="Deneye katılmak için rızanızı veriyor musunuz?", choices=[ [True,"Evet"], [False,"Hayır"] ] ) age = models.IntegerField(label="Lütfen yaşınızı girin") gender = models.StringField( label="Lütfen atanmış cinsiyetinizi seçin", choices=["Erkek","Kadın"] ) crtTaken = models.BooleanField( label="Daha önce hiç CRT testi yaptınız mı?", choices=[ [True,"Evet"], [False,"Hayır"] ] ) crt1 = models.IntegerField(label="Lütfen cevabı giriniz") crt2 = models.IntegerField(label="Lütfen cevabı giriniz") crt3 = models.IntegerField(label="Lütfen cevabı giriniz")