Я взял несколько ответов от 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
ошибка Undefined variable: result
в представлении. Я пробовал foreach
по-разному, но я чувствую, что контроллер ничего не пропускает.