2014-01-26 2 views
0

При добавлении входов формы на странице нам позже нужны текущие данные, как если бы некоторые поля не соответствовали требованиям, поэтому мы покажем их в форме, чтобы помочь пользователю не заполнять его снова, и или показ данных из БД, если есть что-либо.Показать значения в форме

Я использую обычный метод использования тройного:

Input::old('name')?Input::old('name'):$data->name 

к форме входа:

{{ Form::text("name", Input::old('name')?Input::old('name'):$data->name, array("id" => "name", "class" => "form-control", "placeholder" => "name")) }} 

Это $data->name приходит из БД, и вы знаете Input::old('name') уже.

Есть ли лучший способ показать значение, не используя этот старый метод? Предоставляет ли Laravel некоторые хаки об этом?

ответ

0

Это назначение связывания формы модели.

// For creating model 
public function create() 
{ 
    $user = User::newInstance(); 

    return View::make('user.form', compact('user')); 
} 

// For updating model 
public function edit($id) 
{ 
    $user = User::find($id); 

    return View::make('user.form', compact('user')); 
} 

{{ Form::model($user) }} 

    {{ Form::text('name') }} 

{{ Form::close() }} 

Это то, что вы хотите - заполняет форму фактическими данными объекта или с данными $ _POST, если они были введены ранее.

+0

Как насчет входов, если у нас есть массив опций внутри них? '{{Form :: text ('owner', null, array ('class' => 'form-control'))}}' что должно быть значением по умолчанию? здесь 'null' – revo

Смежные вопросы