Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在服务器端使用AngularJS和Django REST实现表单验证插件_Javascript_Validation_Angularjs_Django Rest Framework - Fatal编程技术网

Javascript 在服务器端使用AngularJS和Django REST实现表单验证插件

Javascript 在服务器端使用AngularJS和Django REST实现表单验证插件,javascript,validation,angularjs,django-rest-framework,Javascript,Validation,Angularjs,Django Rest Framework,我现在正在使用Angular为Django REST框架后端实现客户端 为了在最短的时间内启动并运行项目的Alpha,我们决定直接使用服务器端验证 Django rest返回一个JSON字符串,字段和错误之间有一对一的对应关系 Django的这个特性可以让我在几分钟内在jQuery中实现这样一个特性 问题是,我如何使用angular 代码示例: 表格: 如果密码丢失且电子邮件与正则表达式不匹配,则服务器会发出JSON响应: {"password": ["This field is require

我现在正在使用Angular为Django REST框架后端实现客户端

为了在最短的时间内启动并运行项目的Alpha,我们决定直接使用服务器端验证

Django rest返回一个JSON字符串,字段和错误之间有一对一的对应关系

Django的这个特性可以让我在几分钟内在jQuery中实现这样一个特性

问题是,我如何使用angular

代码示例:

表格:

如果密码丢失且电子邮件与正则表达式不匹配,则服务器会发出JSON响应:

{"password": ["This field is required."], "email": ["Enter a valid e-mail address."]}
实现通用组件以向用户显示这些错误的最佳实践是什么

显示错误后所需的HTML:

<label for="uname">Login:</label>
                    <div class="inputUnit" name="email">
                        <input tpye="email" class="text" name="email" ng-model="formData.email">
<label for="error">Email error here</lable>
                    </div>
<label for="password">password:</label>
                    <div class="inputUnit">
                        <input type="password" class="text" name="password" ng-model="formData.password">
<label for="error">Password error here</lable>
                    </div>
登录:
此处的电子邮件错误
密码:
这里的密码错误

在这里,您可以找到我试图用指令处理服务器端验证错误的尝试,我希望它对您有用。

我想要实现类似这样的功能的原因是:服务器端验证总是更强大、更好。此外,后端的一些规则可能会不时更改,这样它们会在前端自动更新。如果您的控制器也在,或者您将数据发布到服务器的任何位置,也会很好。它是一个简单的控制器,使用服务将表单数据提交到API端点,API返回json错误字符串,如果确实有错误,谢谢你分享你的代码Lucas,这是最好的答案。
{"password": ["This field is required."], "email": ["Enter a valid e-mail address."]}
<label for="uname">Login:</label>
                    <div class="inputUnit" name="email">
                        <input tpye="email" class="text" name="email" ng-model="formData.email">
<label for="error">Email error here</lable>
                    </div>
<label for="password">password:</label>
                    <div class="inputUnit">
                        <input type="password" class="text" name="password" ng-model="formData.password">
<label for="error">Password error here</lable>
                    </div>