1

Auth::check('user', $this->request) を使用しています。ここで、'user' は Auth::config 構成の名前であり、Users テーブルに対してユーザーを正常に認証およびログインします。ユーザーのログインが成功すると、ユーザー情報がセッションに保存され、Auth::check('user') 経由でアクセスできるようになります。

私は、Users テーブルが Sites という名前のテーブルと多対 1 の関係を持つリレーショナル デザインを配置しています。Auth::check がログインしているユーザーを認証するためにユーザー テーブルをクエリする場合、ユーザー テーブルからの情報のみが返されます。Sites テーブルから関連データを含む User を返すには、Auth:check が必要です。User モデルと Site モデルの両方に、適切な hasOne および hasMany 関係が定義されています。Auth::check() を介してユーザーがクエリされ、対応する関連データが返されるようにするにはどうすればよいですか?

4

1 に答える 1

1

絶対に必要以上のセッション情報を保存することは一般的にお勧めできませんが、認証アダプターの'query'構成キーを使用してこれを行うことは可能です。クエリ構成配列を取り、関連付けられた関係を持つユーザー オブジェクトを返すことができるFormラッパー メソッドをモデルに作成するだけです。Usersおそらく次のようなものです:

public static function authenticate (array $query) {
    return static::all($query + array('with' => 'Sites'));
}

次に、認証構成に追加'query' => 'authenticate'します。'user'

于 2012-10-05T12:53:02.830 に答える