【发布时间】:2015-12-06 03:00:18
【问题描述】:
我对如何使用 django、django-rest-framework、angularjs 和 django-angular 处理我的表单感到困惑。
使用标准 Django 技术,我可以在我的视图中创建一个模型表单并将其传递给我的模板。
使用 django-angular,我可以确保表单具有许多漂亮的 bootstrap3 样式,并与 angularjs 很好地集成。
使用 angularjs,我可以将表单绑定到 javascript 模型并获得大量很酷的交互功能。
使用 django-rest-framework,我可以通过返回 JSON 的 RESTful API 加载初始表单数据。
这一切都很好。我只是不确定提交表单时该怎么做......
我应该使用调用我的 RESTful API 的 Angular 函数提交吗?或者我应该使用普通的 Django 方法提交(即:if form.is_valid(): form.save()?
我正在从纯 Django 应用程序重构此代码,并且表单具有一些极其复杂的自定义验证方法。我不确定我是否可以(或应该)以角度复制它。
那里有“最佳实践”吗?鉴于我可以通过我的 RESTful API 进行 GET 和 POST,那么仍然通过 Django 执行此操作有什么优势?
注意:我只是认为custom serialization validation 应该让我通过 django-rest-framework 获得与以前在纯 Django 中相同的复杂程度。这是否是一个好主意仍然是一个有效的问题。
note2: angularjs 和 django-rest-framework 确实看起来更快。
【问题讨论】:
-
我无法具体评论 django,但 angular 是一个单页应用程序 - 操作之间不应该重新加载页面。将表单提交到后端会重新加载页面。坚持用角度调用你的 REST api。
标签: angularjs django django-rest-framework