我找到了一个使用 Backbone 实现设计的演示应用程序。在布局文件中,它执行此操作
$(function(){
BackDevise.initialize(<%= current_user.to_json.html_safe %>);
})
如果我在没有登录的情况下启动应用程序,显然没有 current_user,但应用程序不会抛出错误。为什么?即通常,当我使用带Rails 的Devise 时,我必须进行大量<% if current_user ... %>
检查以查看用户是否已登录。为什么这段代码不需要类似的东西?请注意,代码不会(据我所知)覆盖 Devise 提供的 current_user 帮助程序,所以如果我没有登录,我会期望它会抛出异常。