我希望在提交表单之前已经显示表单错误。 我有数据库数据不完整的表单,所以我想在尝试保存之前显示已经丢失的内容。
然而,$ form-> isValid()仅在提交表单时执行(仅在帖子上发生)。
我尝试了验证器,但这给了我一个错误列表而没有将它们添加到表单中,如果我自己这样做,这似乎是一个糟糕的工作,但是我无法弄清楚源代码如何实现这一点。 / p>
$form = $this->get('form.factory')->create(SchoolFormType::class, $school, $formOptions);
$form->handleRequest($request);
if ($form->isValid()) {
// ...
}
答案 0 :(得分:1)
您可以使用以下方式模拟提交:
#operation_logger: customized decorator
class FileView(APIView):
parser_classes = (MultiPartParser,)#A
authentication_classes = (BasicAuthentication,)#B
@permission_classes((IsAuthenticated,))#C
@method_decorator(csrf_exempt)#D
@method_decorator(operation_logger)#E
def dispatch(self, request, *args, **kwargs):#F
return super(FileView, self).dispatch(request, *args, **kwargs)
@method_decorator(operation_logger)#G
def post(self, request):#H
print "xxxxpost"
请参阅source code中的提交方法。