Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 24.12.2014 17:21:24

Как достать в Виде массив (несколько обьектов) переданный из Контролле

С наступающим новым годом всех!

Вопрос: Как достать в Виде массив (несколько обьектов) переданный из Контроллера?
В принципе мне нужно в Шаблоне/Виде представить два поля которые заполняються из двух разных таблиц базы.
Разбираюсь с официальной документацией на http://laravel.com/docs/4.2/responses#views

Там стоит "If you wish, you may pass an array of data as the second parameter given to the make method:

$view = View::make('greetings', $data);"

А вот как обратиться к данным в $data из Вида не пойму.

вот мой код Контроллера:

 
            $Nachrichtens = Nachrichten::getAll();
            $Termins = Termin::getAll();
                       
            $data = array ('news' => $Nachrichtens, 'termine' => $Termins);
    
            $view = View::make('home', $data);
             
            //var_dump($data);
        
           return $view;

За ранее спасибо за любую помощь.

Не в сети

#2 24.12.2014 18:10:07

Wide

Re: Как достать в Виде массив (несколько обьектов) переданный из Контролле

А вот как обратиться к данным в $data из Вида не пойму

foreach($data as $entry)
{
    $entry->title;
}

#3 24.12.2014 18:38:52

Re: Как достать в Виде массив (несколько обьектов) переданный из Контролле

я тоже думал, что все так просто. только не существует такого объекта в этом Виде (home.blade.php).
Или я не корректно к нему обращаюсь?

@section('termins')
    @if(isset($data))
        
        @foreach ($data['termine'] as $element)
            
            <div class="termin">
                   
                  {{ $element->planed_at}}:<br>
                  {{ $element->title}}<br>
    
           </div>
           
       @endforeach
        
   @else
    <p>No Data</p>
   @endif
    
@stop

Не в сети

#4 24.12.2014 20:13:05

Wide

Re: Как достать в Виде массив (несколько обьектов) переданный из Контролле

View::make('index', compact('data'))
View::make('index')->with(['data' => $data])
View::make('index')->with(['data' => $data])
View::make('index', compact('Nachrichtens', 'Termins'))
View::make('index')->with(['Nachrichtens' = $Nachrichtens, 'Termins' => $Termins])

#5 24.12.2014 21:02:40

Re: Как достать в Виде массив (несколько обьектов) переданный из Контролле

Большое Спасибо Wide,  - работает.
реализовал передачу через with().

А  View::make('home', $data)  как указано на официальном сайте так и не работает. Наверное в версии дело.

Не в сети

Подвал раздела