このSO answerに従って、Ember Simple Auth セッションを取得しようとしてcontainer.lookup('simple-auth-session:main');
いますが、これによりundefinedが得られます。
私は Ember Cli と Ember Simple Auth Devise オーセンティケーターを使用しています。
このSO answerに従って、Ember Simple Auth セッションを取得しようとしてcontainer.lookup('simple-auth-session:main');
いますが、これによりundefinedが得られます。
私は Ember Cli と Ember Simple Auth Devise オーセンティケーターを使用しています。
上記の@marcoowのコメントは魅力的でした。彼は私にこの例を指摘した
FIRST: カスタム セッションを登録するイニシャライザを追加する
Ember.Application.initializer(
name: 'authentication'
before: 'simple-auth'
initialize: (container, application) ->
container.register('session:custom', App.CustomSession)
)
2 番目: セッションをカスタム セッションに置き換えます
window.ENV['simple-auth'] = {
session: 'session:custom'
}
3 番目: カスタム セッションを定義する
App.CustomSession = SimpleAuth.Session.extends(
currentUser: (->
unless Ember.isEmpty(@user_id)
@container.lookup('session:main').load('user', @user_id)
//Note! I'm using Ember Persistence Foundation, therefore 'session:main',
//but if you're using Ember Data, use 'store:main'
).property('user_id')
)