Python 如何在oTree中创建多项选择题?

Python 如何在oTree中创建多项选择题?,python,multiple-choice,otree,Python,Multiple Choice,Otree,我想知道在otree中是否可以有一道选择题。类似于单选按钮,但它允许您选择多个内容。 我想的是: 问题:以下陈述清单包含三个正确陈述和三个错误陈述。请选择三条正确的语句: 报表1 报表2 报表3 报表4 报表5 报表6 为此,您可以使用otree\u models.models.multipleechoiceformfield,如下所示: 在models.py中: from otree.api import BasePlayer from otree_tools.models import f

我想知道在otree中是否可以有一道选择题。类似于单选按钮,但它允许您选择多个内容。 我想的是:

问题:以下陈述清单包含三个正确陈述和三个错误陈述。请选择三条正确的语句:

  • 报表1
  • 报表2
  • 报表3
  • 报表4
  • 报表5
  • 报表6

为此,您可以使用
otree\u models.models.multipleechoiceformfield
,如下所示:

models.py中

from otree.api import BasePlayer
from otree_tools.models import fields as tool_models

class Player(BasePlayer):

    correct_statements = tool_models.MultipleChoiceModelField(label="Please select the three correct statements",
                                                              min_choices=3, max_choices=3)
from ._bultin import Page

class ExamplePage(Page):

    form_model = "player"
    form_fields = ["correct_statements"]

    def correct_statements_choices(self):
         """Return the list of statements to choose from."""
         return ["Statement 1", "Statement 2", "Statement 3",
                 "Statement 4", "Statement 5", "Statement 6"]
pages.py
中:

from otree.api import BasePlayer
from otree_tools.models import fields as tool_models

class Player(BasePlayer):

    correct_statements = tool_models.MultipleChoiceModelField(label="Please select the three correct statements",
                                                              min_choices=3, max_choices=3)
from ._bultin import Page

class ExamplePage(Page):

    form_model = "player"
    form_fields = ["correct_statements"]

    def correct_statements_choices(self):
         """Return the list of statements to choose from."""
         return ["Statement 1", "Statement 2", "Statement 3",
                 "Statement 4", "Statement 5", "Statement 6"]
ExamplePage.html
中,只需包含表单字段:

{% extends "global/Page.html" %}
{% load otree %}

{% block content %}
The following list of statements contains three correct statements and three false statements. 

{% formfield player.correct_statements %}

{% next_button %}

{% endblock %}
是的。请看这里:-这是一个链接到官方的oTree集团论坛,在那里讨论了这一点。事实上,它只是一个简单的django多项选择小部件