我有一个包含模型task_list
的Backbone on Rails 应用程序。project
任务列表有一project_id
列引用它所属的项目。
在 Rails 中,我为任务列表设置的路由如下:
POST /projects/:project_id/task_lists task_lists#create
PUT /task_lists/:id(.:format) task_lists#update
DELETE /task_lists/:id(.:format) task_lists#destroy
创建任务列表后,我在 Backbone 中所做的是实例化任务列表,task_lists#create
在 Rails 中设置路由的 url,然后将其保存到服务器:
taskList = new App.Models.TaskLists(data);
taskList.url = "/projects/" + current_project_id + "/task_lists";
taskList.save();
当我需要更新或删除任务列表时,我会在上面执行相同的操作,只是将 url 设置为"task_lists/" + this.id
.
我如何models/taskList.js
在 Backbone 中设置我的文件,而无需在每次需要 CRUD 任务列表时指定 URL?我知道我必须使用自定义函数,url: function () {...}
但 Backbone 似乎使用model.url
而不是model.url()
在将数据传递回 Rails 服务器时使用。