Javascript 如何访问主干数据服务器端

Javascript 如何访问主干数据服务器端,javascript,python,backbone.js,flask,Javascript,Python,Backbone.js,Flask,我有一个主干模型,我用它调用fetch。我有一个flask服务器,需要在该服务器上访问主干模型的id。我似乎无法在服务器上获得模型的id。如何访问我的代码中的entityId BB.Politician = Backbone.Model.extend({ defaults: { type: "Politician" }, url: "/my_url_here" }); var currentUser = new BB.Politician({"entity

我有一个主干模型,我用它调用fetch。我有一个flask服务器,需要在该服务器上访问主干模型的id。我似乎无法在服务器上获得模型的id。如何访问我的代码中的
entityId

BB.Politician = Backbone.Model.extend({
    defaults: {
        type: "Politician"
    },
    url: "/my_url_here"
});
var currentUser = new BB.Politician({"entityId": "1625"});
currentUser.fetch({
    //method: "POST",
    success: function(user){
        currentUserView.render();
    }
});

#Flask server code
@app.route('/my_url_here', methods=['GET', 'POST'])
def return_poitician():
    print request
    print request.args
    print request.values 

    #none of the above print statements are giving me the "entityId"
    return data
我还尝试在路由中添加id,但在执行
fetch()
时抛出了404错误:

@app.route('/my_url_here/<entityId>', methods=['GET', 'POST'])
def return_poitician(entityId):
    print entityId
@app.route('/my\u url\u here/',方法=['GET','POST'])
def返回\u政策专员(实体ID):
打印实体ID
让主干构造GET,它看起来像:

"/my_url_here/" + this.get('id'); // this refers to model
变成

"/my_url_here/1625"
Backbone.Model.url
还接受函数作为值,这样您就可以定义自己构建url的逻辑。例如,如果必须保留
entityId
,则可以构建
url
如下:

url: function () {
    return "/my_url_here" + this.get('entityId');
}

这是一件奇怪的事。我尝试将
entityId
切换为简单的
id
,但它没有注册/将id附加到url上。我的印象是,这就是它处理模型的方式,它查询带有模型的url。我不知道为什么它没有在我的应用程序上注册。但是,将其切换到您答案第二部分中的函数是有效的。谢谢。如果您的模型没有集合,那么您应该使用
urlRoot
而不是
url
,请参见此处:这将对此进行解释。谢谢你的帮助。我想我需要重新阅读文件了。
"/my_url_here/1625"
url: function () {
    return "/my_url_here" + this.get('entityId');
}