已设置骨干模型URL属性,但仍然会收到必须指定的错误

时间:2013-07-17 20:46:35

标签: rest backbone.js

我是骨干新手,我在模型和视图实现方面相当成功。现在我正在研究构建一个RESTful后端来试验骨干的这个方面。所以,我创建了这个简单的客户端来测试请求和响应。但是,我一直收到这个错误:
必须指定“url”属性或函数

对我来说似乎是客户端问题,但也许是在服务器端。任何人都可以解释为什么我可能会收到此错误,如果此设置错误,为什么?

var m_Blog = Backbone.Model.extend({
    defaults: {
        url:'/lib',
        title: null,
        date: null,
        content: null,
        keywords: null,
    }
});

var a = new m_Blog({title:'t', date:'d', content:'c', keywords:'w'});

a.save({
       success: function(model, response) {
           alert('Success' + response.getResponseHeader());
       },
       fail: function(model, response) {
           alert('Fail' + response.getResponseHeader());
       }
});

我也尝试过一个简单的保存调用,因为我真的不确定上述是否有效:

a.save();

1 个答案:

答案 0 :(得分:1)

我相信该属性实际上称为“urlRoot”。您是否尝试将默认设置更改为此?

defaults: {
    urlRoot:'/lib',
    title: null,
    date: null,
    content: null,
    keywords: null,
}

url是模型上的函数名,用于获取urlRoot(即。model.url())。

如果这不起作用,您也可以尝试以这种方式设置urlRoot,虽然我很确定它正在做与上面相同的事情: - )。

var m_Blog = Backbone.Model.extend({
    defaults: {
        title: null,
        date: null,
        content: null,
        keywords: null,
    },

    urlRoot: '/lib'
});