【问题标题】:Return only one column value in laravel's eloquentlaravel eloquent 中只返回一列值
【发布时间】:2017-05-09 11:50:06
【问题描述】:

我有一个具有列语言的表设置。我只想获取用户 ID 是特定用户 ID 的语言。我已经定义了名为 settings 的模型,这就是我获取用户 ID 是给定用户 ID 的所有列的方式。

$uid = Auth::id();
echo Settings::where('user_id', '=', $uid)->first();

如何指定我只希望以 eloquent 中返回的语言列的值?

我想使用我存储的语言来切换语言,比如

  if (!\Session::has('locale')) {
      \Session::put('locale', $language);
  } else {
      Session::put('locale', $language);
  }

【问题讨论】:

    标签: laravel eloquent laravel-eloquent


    【解决方案1】:

    您可以使用如下查询获取您的专栏。

    $settings = Settings::select(['language'])->where('user_id', '=', $uid)->first();
    

    下一步是获取您的属性并设置为 Session:

    Session::put('locale', $settings->language);
    

    你不需要这个条件语句。新的 Laravel 版本支持这个

    $request->session()->put('locale', $settings->language);
    

    【讨论】:

      【解决方案2】:

      使用这个,

      $settings = Settings::select('language')->where('user_id', '=', $uid)->first();
      

      那么,

      Session::put('locale', $settings->language);
      

      然后您可以使用会话变量“本地”。 问候。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-12-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-29
        • 2014-07-30
        相关资源
        最近更新 更多