表单出错:UnicodeDecodeError:'ascii'编解码器无法解码位置1中的字节0xc2:序号不在范围内(128)

时间:2017-04-09 07:46:18

标签: python flask

我在特定表单上遇到此问题,其余的Python / Flask项目工作正常。我正在使用Pycharm,我的代码在IDE中设置为utf-8。不知道如何管理这个。有一个表单及其从列表获取输入值,如下所示:

my_school = form.university.data
            waiverlist = ['Alpha University', 'Beta College', 'Charlie University', 'Foxthroat International University']
            if my_school in waiverlist:
                package = Package(
                    student_id=profile_data.id,
                    stripe_id = 'N/A For non-stripe users',
                    student_email= profile_data.email,
                    is_active=True,
                    package_type='PartnerSubscription',
                    subscription_id='N/A For non-stripe users'
                    )
                dbase.session.add(package)
                dbase.session.commit()

在我的模板中,我有:

<div class="col-xs-6 col-md-6">

                            {{ form.university.label }}{{ form.university(class_='form-control reg-select') }}

                        </div>

错误是here

2 个答案:

答案 0 :(得分:2)

尝试使用一些智能IDE ......我个人更喜欢PyCharm。必须在IDE中定义一些编码约定,因此将其设置为UTF-8并且代码可以正常工作。如果问题与模板中的整个数据有关,则可能是UTF-8问题,但在您的情况下,您是从多个不同来源复制粘贴代码。因此,您的代码编辑器无法识别确切的字符集。对你来说没有其他合理的解释。

答案 1 :(得分:0)

尝试将university.label编码为使用&#39; utf-8&#39;在模板中。

 {{ form.university.label.encode('utf-8) }}