2014-02-18 6 views
1

У меня возникли трудности с тем, что это нормально работает, возможно, есть ошибка с тем, как я пытаюсь передать переменную id в метод. Я использую Laravel.Ошибка в php: создание объекта по умолчанию из пустого значения

Мой взгляд содержит эту форму, чтобы обработать функцию и передать идентификатор:

{{ Form::open(array('method' => 'GET', 'url' => array('uploads/edit', $upload->id))) }} 
    {{ Form::submit('Edit', array('class' => 'btn btn-info')) }} 
{{ Form::close() }} 

Контроллер:

public function getEdit($id) 
{ 
    $upload = $this->upload->find($id); 

    if (is_null($upload)) 
    { 
    return Redirect::to('uploads/alluploads'); 
    } 

    $layout->layout->content = View::make('uploads.edit', compact('upload')); 
} 

Ошибка:

ErrorException 
Creating default object from empty value 

ответ

3

Ошибка здесь;

$layout->layout->content = .... 

Вы не можете этого сделать, так как у вас нет $ layout defined или $ layout-> layout. Попробуйте:

$layout = View::make('uploads.edit', compact('upload')); 

или если вы действительно заинтересованы в том, чтобы он был точно таким, как ваш код, вы можете это сделать;

$layout = new stdClass(); 
$layout->layout = new stdClass(); 

$layout->layout->content = View::make('uploads.edit', compact('upload')); 
Смежные вопросы