2

假设我有一个Kitty包含两个必填字段的模型,name并且favoriteSnack. 我想让人们在一个视图中编辑 Kitties,其形式如下:

Edit Kitty
Name: [______________]
Favorite snack: [__________________]
[Submit]

我被困住了——GET 和 POST 的无聊日子似乎更容易了。那么用 AngularJS 设置它的好模式是什么?具体来说,

  • 我应该如何设置我的 URL 和方法?会自动执行此操作吗ngResource?我正在猜测,
    • GET /kitties- 列出所有小猫
    • GET /kitties/:id- 得到一只小猫
    • POST /kitties- 创建一个新的小猫
    • PUT /kitties/:id- 更新小猫
    • DELETE /kitties/:id- 删除一只小猫
  • 提交时,我应该在客户端还是服务器端验证模型?
  • 如果是服务器端,我如何处理来自我的模型连接到的 REST API 的非 200 响应?
  • 我应该如何将错误传播回用户?
  • 我可以在输入时进行验证吗?

如果我遗漏了一些明显的东西,请原谅我。

4

1 回答 1

4
  • 我应该如何设置我的 URL 和方法?会自动执行此操作吗ngResource

是的,是的,你应该使用ngResource.

  • 提交时,我应该在客户端还是服务器端验证模型?

无论您是否进行客户端验证,您都应该始终在服务器上验证发送到服务器的任何内容。但是,在 Angular 中,您不需要在提交时进行任何验证,因为可以在您键入时进行验证(您的最后一个问题)

  • 如果是服务器端,我如何处理来自我的模型连接到的 REST API 的非 200 响应?

您可以在方法的error参数中处理它们ngResource。请参阅文档中的退货部分

  • 我应该如何将错误传播回用户?

以 Angular 的方式进行操作,并在发生错误时简单地在模型上设置一个属性。此属性应呈现在您的 UI 上的某个位置。如果你编码正确,你几乎可以保证任何以正确方式使用你的应用程序的人都会看到客户端错误,所以我不会在来自服务器的特定字段错误上投入太多精力。

  • 我可以在输入时进行验证吗?

是的,使用所有输入属性

于 2013-05-19T17:21:22.003 回答