禁止创建没有'fields'属性或'exclude'属性的ModelForm;表单twocheckoutResponseForm需要更新

时间:2016-04-30 10:51:22

标签: django payment-gateway

我正在尝试在我的django网络应用中添加支付网关。我使用2checkout作为我的支付网关。但是没有合适的源代码我可以在应用程序中集成2checkout完整的流程。任何人都可以帮助我吗?我试图按照link中的步骤进行操作,但这并没有多大帮助。

1 个答案:

答案 0 :(得分:2)

Django 1.8+要求模型表单明确表示哪些字段应包含在表单中。您链接到的库已在4年前更新,不再与最新版本的Django兼容。你可以自己分叉并修复它,或者修补它。

最简单的修复方法是to add fields = '__all__'来复制旧行为,但建议只包含您希望使用的字段。

Class to patch

class tocheckoutResponseForm(forms.ModelForm):
    Ds_Date = forms.DateField(required=False, input_formats=('%d/%m/%Y',))
    Ds_Hour = forms.TimeField(required=False, input_formats=('%H:%M',))

    class Meta:
        model = tocheckoutResponse
        fields = '__all__'

但说实话,看到对所有类和字段名称使用case的错误使我不想使用这个库。你最好还找到一些仍在积极开发的东西。