在服务器端用AngularJS和Django REST实现一个表单验证插件
Implementing a form validation plugin with AngularJS with Django REST at the server side
我现在正在为Django REST框架后端使用Angular实现客户端。
为了在最短的时间内启动并运行项目的Alpha,我们决定直接使用服务器端验证。
Django rest返回一个JSON字符串,其中字段和错误之间存在一一对应关系。
Django的这个特性可以让我在几分钟内在jQuery中实现这样一个特性。
问题是我该如何处理angular?
代码示例:
形式:
<label for="uname">Login:</label>
<div class="inputUnit" name="email">
<input tpye="email" class="text" name="email" ng-model="formData.email">
</div>
<label for="password">password:</label>
<div class="inputUnit">
<input type="password" class="text" name="password" ng-model="formData.password">
</div>
如果两个字段都为空,则服务器的JSON响应:
{"password": ["This field is required."], "email": ["This field is required."]}
服务器的JSON响应,以防密码丢失且电子邮件与regex:不匹配
{"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>
在这里,您可以找到我用指令处理服务器端验证错误的尝试https://github.com/9ci/angle-grinder/blob/c0211c885c561f8ec820b38d506135f4fb8b6dfb/app/scripts/modules/forms.coffee#L321我希望它对你有用。
相关文章:
- jquery mobile上多个页面上的一个表单
- 循环遍历包含另一个表单的表单
- 如何在javascript转换编码中将一个动态值从一个表单添加到另一个页面
- 我确实有一个表单,如果用户输入了输入,它应该检查否定或空的输入框,并抛出一条警告消息
- 如何通过 JS 将内容从一个表单中的一个文本框复制到另一个表单中的另一个文本框
- Slding表单不会一次显示一个表单
- html链接onclick弹出一个表单
- 使用 javascript 将值从一个表单传递到另一个表单
- 当在一个表单中进行更改时,ng-disabled 会触发所有表单验证
- 如何将一个表单中的项目添加到 Rails 中另一个表单的下拉选项
- 如何在一个表单标记中验证多个字段集
- 如何从一个表单的输入字段中获取数据,并使用JQuery在不同的表单中填充相同的输入类型
- 在PHP中将下拉选择列表的内容从一个表单传递到另一个表单
- 一个表单包含多个提交操作
- Javascript-更正用户名和密码以启用另一个表单
- 在ul后面添加一个表单
- angular js如何在提交一个表单时验证另一个表单
- 如何将某些HTML从一个页面转换为另一个表单
- 使用JavaScript将数据从一个表单显示到另一个页面
- 两个表单,一个选择/下拉框-需要将选择值从一个表单复制到另一个表单