gpt4 book ai didi

python - '类型错误: 'int' object is not subscriptable' in oTree Page error_message

转载 作者:太空宇宙 更新时间:2023-11-03 20:53:08 25 4
gpt4 key购买 nike

我试图将个人在表单字段中输入的代码与我必须输入的代码列表进行比较,但出现下一个错误

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 它将是:

values = {"number": 123}

因此,以下应该是正确的实现:

class Code(Page):
form_model = 'player'
form_fields = ['number']

def error_message(self, values):
print('El número que pusiste es', values["number"])
if values["number"] not in [1234, 3456, 6986]:
return 'El código debe corresponder al código que se le entrego en la sesión 1'

关于python - '类型错误: 'int' object is not subscriptable' in oTree Page error_message,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56189716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com