from otree.api import * import json # import data with open("_static/global/sample_500.json", "r", encoding="utf-8") as f: data = json.load(f) doc = """ Your app description """ class C(BaseConstants): NAME_IN_URL = 'label' PLAYERS_PER_GROUP = None NUM_ROUNDS = 500 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): name = models.StringField(label="What is your name?") label = models.StringField(label="What is/are the sponsor in description above?") video_id = models.StringField() des = models.StringField() # FUNCTIONs # PAGES class name(Page): form_fields = ['name'] form_model = 'player' def is_displayed(self): return self.round_number == 1 class label(Page): form_fields = ['label'] form_model = 'player' def vars_for_template(player): des = player.des = data[player.round_number-1].get("video_des") player.video_id = data[player.round_number-1].get("video_id") return {'des': des} class thanks(Page): def is_displayed(player): return player.round_number == C.NUM_ROUNDS page_sequence = [name, label, thanks]