使用具有restangular的强大模型层来保持自定义属性

时间:2014-04-04 19:40:07

标签: angularjs restangular

我有一个问题,我想知道Restangular是否支持。我有一个UserModel,它是我的模型层的一部分。它可能具有服务器在其模型和行为中没有的自定义属性。我不清楚我是否能够使用我的自定义用户模型,将其发送到后端,当它返回时将其转换回我的模型层的UserModel对象,所以我仍然有自定义属性和方法

以上是这个问题:http://plnkr.co/edit/IlYcSRuX3GPWmewxniuq?p=preview

我在哪里处理转型?我是否在配置块中添加方法,还是应该通过添加响应拦截器来添加它?那些服务器可能不会发回给我的自定义属性呢?我没有遇到任何好的例子。

UserInfoCntrl控制器在我的示例中将UserModel对象发送到contactInformationService。

1 个答案:

答案 0 :(得分:1)

其中一些可能是设计选择,即使用您认为最好的设计。但是,常见的模式 [citation needed;)] 将在客户端和服务器之间集成同步逻辑,并在"模型中使用#34;服务。

UserModel服务将负责将User对象提供给应用程序的其余部分,使其与服务器保持同步(可能通过save()之类的方法,或者可能自动?)。然后,该服务将是负责与服务器通信的唯一模块,至少在涉及用户对象时。它还可以在实例化时自动从服务器中提取用户数据。

建筑感觉非常干净,至少对我而言。

我没有任何完全符合您需求的具体示例,但authentication service by Fnakstad springs to mind。它使用$http$cookieStore维护一个对象(实际上是一个用户对象!)。 Restangular比$http更高级,但是自包含的服务概念提供了操作和存储的方法。