2013-06-22 6 views
1

У меня есть 3 вида (которые отображают настройки для каждого): Пользователи, группы, параметры Каждое из этих представлений успешно выполняет рендеринг, используя приведенное ниже. Контроллер передает информацию о базе данных в каждое представление.Laravel 4 - запрос на просмотр

@extends('master') 

    @section('main-title') 
     Title 
    @stop 

    @section('main-content') 
     // All the divs, content etc (working fine) 
    @stop 

У меня есть еще один вид: Настройки

Идея этой точки зрения проста, чтобы быть обзор всех настроек от пользователей, групп и вариантов. Поэтому по существу я пытаюсь объединить каждый из 3-х основных «контент-контента» и помещать его в пределах @section('main-content') в моем представлении «Настройки». Однако я понятия не имею, как это сделать.

Единственный вариант, о котором я могу думать, это дублировать содержимое в представлении «Настройки» (функция индекса), однако это вызовет проблемы, когда я хочу что-то изменить, поскольку мне нужно будет сделать это в двух шаблонах.

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

public function index() 
{ 
    $users = User::all(); 
    $options = Option::all(); 
    $groups = Group::all(); 
    return View::make('layouts.settings', array('users' => $users, 'options' => $options, 'groups' => $groups)); 
} 

public function users() 
{ 
    $users = User::all(); 
    return View::make('layouts.settings.users', array('users' => $users)); 
} 

public function options() 
{ 
    $options = Option::all(); 
    return View::make('layouts.settings.options', array('options' => $options)); 
} 

public function groups() 
{ 
    $groups = Group::all(); 
    return View::make('layouts.settings.groups', array('groups' => $groups)); 
} 

Есть в любом случае, я могу сказать, в мои настройки просмотра: включать содержимое в «основной-контента» из следующих видов (пользователей, групп, Options). Или, используйте вложенное представление, которое я пробовал, но не могу работать.

Заранее спасибо.

+0

Вы пробовали 'View :: сделать ('Ваше мнение') -> гнездо ('ребенок', 'child.view.name')'? В представлении 'your view' вы можете использовать' $ child' для вывода дочернего представления. –

+0

Пробовал: http://paste.laravel.com/xZl Не совсем уверен, что происходит ... но я, наверное, глуп. – Alias

ответ