想要从laravel 5.3中的数据库获取数据作为单个值,但它返回列名

时间:2017-02-03 13:34:38

标签: php laravel-5

我已经开始使用laravel 5.3了。我想从数据库中获取数据,但它并不是我想要的数据。例如,我有作业表whitch包含当前2条记录如下。

┏━━━━┳━━━━━━━━━━━━┓
┃ id ┃ job        ┃
┣━━━━╋━━━━━━━━━━━━┫
┃ 1  ┃ Accountant ┃
┣━━━━╋━━━━━━━━━━━━┫
┃ 2  ┃ Sales Man  ┃
┗━━━━┻━━━━━━━━━━━━┛

我创建了名为作业的模型,并使用以下内容创建了 jobsController

public function job(){
    $jobname = Job::select('job')->where('id',2)->get();
    return view('name', array('jobname'=>$jobname));
}

并在视图中显示结果[{"job":"Sales Man"}]。我希望结果只有销售人员。有人可以告诉我如何解决这个问题。

2 个答案:

答案 0 :(得分:0)

public function job(){

    $jobname = Job::select('job')->where('id',2)->get();
    return view('name', array('jobname'=>$jobname->job));
}

你应该直接从控制器传递对象变量到视图....

答案 1 :(得分:0)

您需要使用.first而不是.get,因此查询只返回一个元素:

$jobname = Job::select('job')->where('id',2)->first();

然后您可以使用$jobname->job来阅读该属性。

以下是一个相关问题:Pluck together with first using Query builder