Неопределенная переменная в View?

У меня небольшая проблема, которую я не понимаю ..

Мой контроллер:

<?php

class SearchController extends BaseController{

public function postSearch(){

$course = Input::get('course_category');

if(empty($course)){

return Redirect::route('search')
->with('global','<div class="alert alert-danger" role="alert" align="center">Du måste välja kurs och universitet!</div>');

}else{

$courses = Posts::where('course_category','LIKE','%'.$course.'%')->get();

return View::make('search')
->with('course_category',$courses)
->with('courses',$courses);
}

}
}

Мой взгляд:

@extends('layout.main')
@section('content'){{Form::open(array('method' => 'POST', 'route' =>array('post-search')))}}

<div class="form-group">
{{Form::label('course_category','Språk')}}
{{Form::select('course_category',array(
''              =>'-Choose--',
'php'            => 'PHP',
'javascript'     =>'Javascript',
'java'           =>'Java',
'C#'             =>'C#',
'html'           =>'HTML',
'css'            =>'CSS',
'.net'           =>'.NET',
'jquery'         =>'jQuery',
'ajax'           =>'Ajax'

))}}
</div>

{{Form::submit('Sök',array('class'=>'btn btn-info'))}}

{{Form::token()}}

{{Form::close()}}

@if($courses->count())

@foreach($courses as $c)

<p>{{$c->title}}</p>

@endforeach

@endif

@stop

Это ошибка, которую выдает мой вид поиска:

ErrorException (E_UNKNOWN)
Неопределенная переменная: курсы (Просмотр: /Applications/MAMP/htdocs/LaraBoost/app/views/search.blade.php)

Как это возможно, что переменная $ courses в представлении не определена, когда я передаю ее в представление из контроллера?

Что я упустил?

0

Решение

Похоже, у вас есть проблема в коде контроллера, логика кажется неправильной, но чтобы преодолеть проблему представления, вы можете попробовать что-то вроде этого:

@if(isset($courses) && $courses->count())
//...
@endif

поскольку $courses не определено, то не отправляется. Если вы попробуете это вместо

@if(isset($courses) && $courses->count())
//...
@else
{{'No Courses'}}
@endif

Вы получите идею, и она позволит вам понять, что вы делаете.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector