我正在尝试捕获模型验证的错误消息,然后将其发送给 模板按上下文变量在网页上打印。但不能这样做。 我读了django材料说试着使用的message_dict属性 ValidationError但是找不到那个很好的例子。
(django参考 https://docs.djangoproject.com/en/1.5/ref/models/instances/#django.db.models.Model.full_clean)
以下是我的代码的一部分。
try:
user.full_clean()
except ValidationError as e:
email_error_message = e.message_dict['email']
nickname_error_message = e.message_dict['nickname']
return render(request, 'welcome/register.html', {'email_error_message' :
email_error_message, 'nickname_error_message' : nickname_error_message})
我怎么能让它成为可能?在此先感谢:)
答案 0 :(得分:0)
message_dict值是一个错误消息列表,而不仅仅是一条错误消息,因此您需要加入消息。
try:
user.full_clean()
except ValidationError as e:
email_error_message = ','.join(e.message_dict['email'])
nickname_error_message = ', '.join(e.message_dict['nickname'])
return render(request, 'welcome/register.html', {'email_error_message' :
email_error_message, 'nickname_error_message' : nickname_error_message})