2015-04-24 5 views
1

Я пытаюсь создать форму для присвоения награды предмету (я называю это «билетом»). Я хочу выпадающий список со всеми билетами, чтобы тот мог выбрать.laravel 5 заполните форму выберите с данными

Это мой контроллер

$tickets = Ticket::all(); 
return view('rewards.create',compact('tickets')); 

И в моей blade.php зрения

<div class="form-group"> 
    {!! Form::label('ticket','reward for: ') !!} 
    {!! Form::select('id', $tickets, Input::old('id')) !!} 
</div> 

Это работает, но он показывает все поля объекта. Я хочу, чтобы он показывал два поля. Для того, чтобы сохранить «идентификатор» в vallue и «описание» в письменном поле выберите поле, но делать что-то вроде

{!! Form::select('id', $tickets->description, Input::old('id')) !!} 

вызывает ошибку. Может ли кто-нибудь помочь?

ответ

0

В вашем blade.php

<div class="form-group"> 
    {!! Form::label('ticket','reward for: ') !!} 
    {!! Form::select('id', $tickets->id, Input::old('id')) !!} 
    {!! Form::select('description', $tickets->description, Input::old('description')) !!} 
</div> 
2

варианты должны быть переданы в виде массива: ['value' => 'text']. Вы можете использовать lists(), чтобы построить этот массив:

$tickets = Ticket::lists('description', 'id'); 
return view('rewards.create',compact('tickets')); 
Смежные вопросы