来自db:raw的不受欢迎的结果

时间:2014-02-24 23:03:21

标签: php mysql laravel

我从SO和Laravel论坛中得到了一些答案来拼凑结果。但是,我有一个Undefined variable error,我不知道为什么。

控制器

public function getJobs()

        {
            $query = DB::table('jobs');

            if (isset($jcategory))
            $query->where('category', '=', $jcategory);

            $result = $query->get();
           return View::make('jobsearch.search', $result);
        }

查看(缩写为空格)

<form action="{{ action('JobsearchController@getJobs') }}" method="post">
  <div class="row">
    <div class="large-8 columns">
      <input type="text" name="realm" placeholder="Keywords/Skills" />
    </div>
    <div class="large-4 columns">
        <select name="jcategory">
        <option value="">Select Category</option>
        <option value="jc1">Accounting</option>

...

 </select>
    </div>
    <div class="large-4 columns">
       <input type="submit" value="Search" style="width:100%; padding-top: .5rem;
padding-bottom: .5rem;" class="button border-btn" />
      </div>


</div>
</form>

@foreach ($result as $job)
    <p>{{ $job->id }}</p>
@endforeach

一旦我将这个小测试工作,我会将isset的其余部分添加到$query中。我想要实现的是视图将加载数据库中的所有作业,如果用户更改类别(例如)并提交视图,它将重新加载具有查询中反映的更改的页面。

我目前在视图中出现Undefined variable: result错误。我以不同的方式尝试了foreach,但我觉得控制器没有传递任何东西。

1 个答案:

答案 0 :(得分:1)

您以错误的方式传递了$result变量。试试这个:

return View::make('jobsearch.search')->with('result', $result);