Нежелательный результат от db:raw
Вопрос
Я взял несколько ответов с форумов 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
по-разному, но у меня такое ощущение, что контроллер ничего не передает.
Решение
Вы прошли $result
переменная неправильно.Попробуй это:
return View::make('jobsearch.search')->with('result', $result);
Не связан с StackOverflow