我是新来的骨干,尝试了我的第一个应用程序后,通过几个教程的应用程序。Backbone.js自定义休息路线
我想知道什么是完成以下
在后端(导轨)
我有一个型号名称业务的最佳方式,这是一个有很多属性的复杂模型,它有一个关联的地址(has_one :address
),并有一个化身和另一个配置pitcure和很多。
从我的前端我想能够获取和更新商业资料的特定部分,让我们说我只想获取basic_info,其中包括名称,类别和地址比我想能够更新个人资料图片和化身。
我在骨干所看到的是,该模型的方法保存,更新,获取,破坏
,如果我想有其他的方法,如fetch_basic_info
,fetch_profile_picture
,update_profile_picture
什么?而针对这些我希望相关的意见得到相应的通知。
以下是我想出了
可以说,我想获取基本信息
功能
fetch_basci_info
添加到骨干模型- 在这个函数内发送使用
$.ajax
自定义ajax请求到服务器 - 手动触发事件
"basicinfo:fetched"
- 在这个函数内发送使用
我的路由器功能内
- 创建模型对象
- 创建一个新的观点可以说
BasicInfoView
并把它传递模型对象 - 视图里面绑定的,甚至模型让说
model.bind('basicinfo:fetched', this.render)
- 当路由器初始化时调用
model.fetch_basic_info
(在路由器初始化)
所以路由器被称为它创建视图结合自定义事件,并呼吁返回服务器响应(我称手动设置在此处设置骨干模型的属性)model.fetch_basic_info()
请求被发送。之后,触发自定义事件事件,通知视图并呈现自己
这是我的第一个真正的骨干应用程序,所以如果我正在做一些真正阻碍我的事情。
你对此有何看法。
谢谢您的阅读和feedbcak。
分解是一个很酷的想法,但我不会写我的后端来支持这些模型吗? – Abid
没有比你的方法,我想。你打算如何处理你的单独的获取方法,等等。fetch_basic_info,fetch_profile_picture – lecstor
也考虑到@the4thelasers的答案。如果你可以有一个单一的模型,并且你的每个视图都可以修改他们需要的任何东西并保存它,那么在客户端和后端都会变得更简单。如果您足够幸运需要,您可以随时进行优化。 – lecstor