Python formencode返回类型无效

Python formencode返回类型无效,python,error-handling,webforms,formencode,Python,Error Handling,Webforms,Formencode,如果表单编码中发生异常,那么返回类型是什么 假设 if(request.POST): formvalidate = ValidationRule() try: new = formvalidate.to_python(request.POST) data = Users1( n_date = new['n_date'], heading = new['heading'],

如果表单编码中发生异常,那么返回类型是什么

假设

if(request.POST):
        formvalidate = ValidationRule()
        try:
            new = formvalidate.to_python(request.POST)
            data = Users1( n_date = new['n_date'], heading = new['heading'], 
                           desc = new['desc'], link = new['link'], 
                           module_name = new['module_name'] )
            session.add(data)
            session.commit()
        except formencode.Invalid, e:
            errors = e

如何找到字段错误

我假设您使用的是formencode()

您可以使用解包错误来获取每个字段的错误,例如

import formencode
from formencode import validators

class UserForm(formencode.Schema):
    first_name = validators.String(not_empty=True)
    last_name = validators.String(not_empty=True)

form = UserForm()
try:
    form.to_python({})
except formencode.Invalid,e:
    print e.unpack_errors()
它将打印每个字段的错误记录

您可以使用formencode.htmlfill.render以不同的方式呈现所有错误,如读取

我假设您使用的是formencode()

您可以使用解包错误来获取每个字段的错误,例如

import formencode
from formencode import validators

class UserForm(formencode.Schema):
    first_name = validators.String(not_empty=True)
    last_name = validators.String(not_empty=True)

form = UserForm()
try:
    form.to_python({})
except formencode.Invalid,e:
    print e.unpack_errors()
它将打印每个字段的错误记录

您可以使用formencode.htmlfill.render以不同的方式呈现所有错误,如读取

这不是一个python语言问题,而是与某个web框架相关的问题,请您告诉我是哪一个问题好吗?对不起,我使用的是django python frameworkit,它看起来不像django,我认为您在某些web框架中使用formencode表单验证库,例如pylons/turbogears?这不是一个python语言问题,但与某些web框架有关,所以请您告诉我它是哪一个?抱歉,我使用django python frameworkit,它看起来不像django,我认为您在某些webframework中使用formencode表单验证库,例如pylons/turbogears?这是什么意思?也显示错误,它显示一个字典,您可以从中获取任何字段错误,例如print e.unpack_errors()['first_name']好的,那么您可以选择它作为答案,如果它符合您的需要,您可以通过单击问题右上角的向上箭头向上投票,并通过单击复选/勾选来选择答案。这是什么意思?也显示错误,它显示一个字典,您可以从中获取任何字段错误,例如打印或解包错误()['first_name']确定,因此您可以选择它作为答案,如果它符合您的需要,您可以通过单击问题右上角附近的向上箭头向上投票,然后单击选中/勾选来选择答案。