我试图将一个人放入表单域的代码与我必须放入的代码列表进行比较,但我得到了下一个错误
Internal Server Error: /p/75spo3h2/beliefs/Code/1/
Traceback (most recent call last):
File "c:\users\diese\appdata\local\programs\python\python36\lib\site-
packages\otree\forms\forms.py", line 252, in _clean_fields
error_string = error_message_method(value)
File "C:\Users\diese\beliefs\beliefs\pages.py", line 15, in
number_error_message
if value[("numbers")] not in [int(1234, 3456, 6986)]:
TypeError: 'int' object is not subscriptable
ERROR Internal Server Error: /p/75spo3h2/beliefs/Code/1/
Traceback (most recent call last):
File "c:\users\diese\appdata\local\programs\python\python36\lib\site-
packages\otree\forms\forms.py", line 252, in _clean_fields
error_string = error_message_method(value)
File "C:\Users\diese\beliefs\beliefs\pages.py", line 15, in
number_error_message
if value[("numbers")] not in [int(1234, 3456, 6986)]:
TypeError: 'int' object is not subscriptable
我试着把数字改成int,但效果不好
class Code(Page):
form_model = 'player'
form_fields = ['number']
def number_error_message(self, value):
print('El número que pusiste es', value)
if value[("numbers")] not in [1234, 3456, 6986]:
return 'El código debe corresponder al código que se le entrego en la sesión 1'
可以在子类中重写的
Page
中的错误消息生成方法称为error_message
。它接收一个字典values
,其中包含页面中所有form_fields
的值。你知道吗在您的情况下,这将是一个只有一个条目的字典,因为您只有一个字段,例如,如果播放器输入
123
,它将是:因此,以下是正确的实施方式:
相关问题 更多 >
编程相关推荐