我想知道如何從數據庫中刀片獲得的數據就像從用戶表:Laravel獲取記錄從數據庫中刀片鑑於
{{ Auth::user()->name }}
我有表user_settings
我想獲得創紀錄從這張表中以登錄的用戶身份標識像這樣:
{{ UserSettings::user()->my_field }}
我該怎麼做?
我想知道如何從數據庫中刀片獲得的數據就像從用戶表:Laravel獲取記錄從數據庫中刀片鑑於
{{ Auth::user()->name }}
我有表user_settings
我想獲得創紀錄從這張表中以登錄的用戶身份標識像這樣:
{{ UserSettings::user()->my_field }}
我該怎麼做?
試試這個在您的刀片觀點
{{ \App\UserSettings::where('user_id',Auth::user()->id)->first()->my_field }}
在默認情況下,模型文件是應用程序文件夾內。到數據庫表
這種直接訪問是不是雖然首選,您可以返回該從控制器的功能就像一個變量,
$field = \App\UserSettings::where('user_id',Auth::user()->id)->first()->my_field;
return view('view_name',comapact('field'));
,並在刀片使用像
{{$field}}
另一個好辦法就是發表於Orkhan在另一個使用雄辯關係的答案。 希望你明白。
您需要檢索相關的認證用戶的UserSettings
:
UserSettings::where('user_id', Auth::id())->first()->my_field
您可以定義一個名爲current()
回,對於你的方法。
class UserSettings extends Model
{
public static function current()
{
return UserSettings::where('user_id', Auth::id())->first()
}
}
然後使用:
UserSettings::current()
另一方面有會更好的用戶模型中使用one-to-one relationship:
class User extends Model
{
public function settings()
{
return $this->hasOne('App\UserSettings');
}
}
然後使用:
Auth::user()->settings->my_field
嘗試{{ UserSettings :: user() - > my_field - > get()}} –
return vie w(「你的看法」,[「userSettings」=> UserSettings :: user()]);現在在您的視圖中可以使用$ userSettigs – jgetner
請勿從視圖層進行數據庫調用,從控制器傳遞數據 – Steve