我有一个应用程序,我使用Rails通过Devise管理注册/进/出。
当我登录时,我被重定向到Backbone开始的Dashboard #index。
我想以某种方式检索Backbone中的current_user.id和current_user.token。
我唯一的想法是在我的dashboard.html.haml
中有这个:javascript
window.App.current_user.id = "#{current_user.id}"
window.App.current_user.token = "#{current_user.token}"
答案 0 :(得分:7)
(请注意,只有公共信息才能在客户端访问)
要获得更优雅的解决方案,您可以使用正常的Backbone模型从服务器创建UserSession
Backbone模型和fetch
。
window.App.UserSession = Backbone.Model.extend({
urlRoot: "/session"
});
如果不想发出这个额外请求,您可以使用模板渲染时间中已有的数据显式加载模型:
window.App.current_user =
new window.App.UserSession({
id: "#{current_user.id}",
token: "#{current_user.token}"
});