from otree.api import * c = cu doc = '' 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): Name = models.StringField(blank=True, label='Your name') Sex = models.StringField(choices=[], label='Your gender') Height = models.FloatField(label='Your height') Weight = models.FloatField(label='Your weight') class Basicinfo(Page): form_model = 'player' form_fields = ['Name', 'Sex'] class BMIinfo(Page): form_model = 'player' form_fields = ['Height', 'Weight'] class BMI(Page): form_model = 'player' @staticmethod def vars_for_template(player: Player): BMI = (player.Weight) / (player.Height * player.Height) return dict( BMI=BMI ) page_sequence = [Basicinfo, BMIinfo, BMI]