Django自定义UpdateView显示异常*和*返回对象

时间:2015-11-10 08:57:47

标签: python django django-forms

我有一个特殊的UpdateView和ModelForm(用于我的Stripe集成),我想知道是否有两种方式返回对象以简单的方式在页面上显示错误。我的直觉告诉我没有(因为异常会引发异常......),但任何见解/输入都会很棒。

这是我的自定义modelForm的clean方法,它与UpdateView绑定。

def clean(self):
    if not self.user:
        raise forms.ValidationError("User needs to not be null.")
    try:
        cream = CREAM.create_or_update(self.user, self.stripeToken)
        for field in self.Meta.fields:
            self.cleaned_data[field] = getattr(cream, field)
        return self.cleaned_data
    except Exception as e:
        raise forms.ValidationError(e.message)

这里是我们的老朋友UpdateView的get_object

def get_object(self):
    cream = CREAM.objects.filter(client=self.request.user)
    if cream.exists():
        return cream.get()
    else:
        return CREAM()

非常感谢!

0 个答案:

没有答案