繁体   English   中英

无法在Rails上访问Backbone模型上的ID?

[英]Can't access id on Backbone model on rails?

问题:我正在使用Backbone.js在Rails中镜像资源丰富的模型。我正在尝试将当前用户ID获取到Backbone Workshop.Models.User模型,以便可以通过Rails用户RESTful资源将用户保存到数据库中。 我无法从Currentuser模型中检索ID。

当我尝试在Backbone中检索当前用户模型的实例的ID时,返回值未定义。 我可以在服务器日志上看到提取成功,并且可以在将本地实例输出到日志中的情况下检查对象。 我什至可以使用控制台运行相同的代码并成功获取ID。 仅在运行时。

我怀疑我应该以不同的方式配置模型或在我的视图中绑定某些内容。 救命?

在这里看到我的要旨

楷模:

# singleton model gets current user

class Workshop.Models.Currentuser extends Backbone.Model
idAttribute: '_id'
urlRoot: -> '/user/currentuser/'

# classic Rails RESTful resource

class Workshop.Models.User extends Backbone.Model
urlRoot: '/users/show'

在您的要旨中,您具有以下代码

current_user = new Workshop.Models.Currentuser
current_user.fetch()
console.log(current_user.id)

但是,fetch是异步的,并且在完成ajax调用之前不会填充id

试试这个(对不起,因为我的红宝石技能为零,我的coffeescript也不太好,因此无法保证语法)

current_user.fetch({ success: -> console.log(current_user.id) });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM