所以我一直在https://github.com/heartsentwined/ember-auth-rails-demo上关注教程,将一个带有rails后端的ember前端连接起来进行身份验证。我可以通过提交表单进行身份验证,这太棒了!但是现在我发现我想用当前用户的信息做一些事情。
现在,我可以成功登录并在签名时签名按钮退出。但是,我想做"You are signed in as {{currentUser.username}}. Sign Out"
我在ember-auth问题#11上看到他们显然在某一点实现了这样的事情:
https://github.com/heartsentwined/ember-auth/issues/11
但是,登录后,我的身份验证显示“您已登录为。注销”
我怀疑用户现在可能没有加载到应用程序中。我知道我可以简单地在数据库中查询控制器中的当前用户,但是我将此功能视为应用程序范围内的应用程序。这里有最好的做法,还是我自己实施一些东西?
验证设置
App.Auth = Em.Auth.create
signInEndPoint: '/users/sign_in'
signOutEndPoint: '/users/sign_out'
tokenKey: 'auth_token'
tokenIdKey: 'user_id'
userModel: 'App.User'
答案 0 :(得分:2)
你有一个用户模型并且ember-auth知道吗?
App.Auth = Ember.Auth.create
# stuff...
userModel: 'App.User'
答案 1 :(得分:1)
阅读上面提到的文档后,访问模板中currentUser
对象的正确方法应该是:
"You are signed in as {{App.Auth.currentUser.email}}. Sign Out"
而不仅仅是{{currentUser.username}}
。我使用了App.Auth.currentUser.email
,因为我没有在username
对象上看到任何Auth.currentUser
属性,但如果确实存在,那么请耐心等待,当然你可以使用它。
希望它有所帮助。