2013-05-21 9 views
1
내가 가진

에 선택이형태의 데이터가 같이 laravel

id rel word 

1  A  word A 
2  B  word B 
3  B  word C 

얻기 위해이 같은 내 컨트롤러 모양 데이터 :

<select> 
@foreach($datas as $data) 
<option value="{{ $data->id }}" rel="{{ $data->rel }}">{{ $data->word }}</option> 
@endforeach 
</select> 
:

public function get_new() 
{ 
return View::make('form.new') 
    ->with('datas', Data::all()); 
} 

내보기는 다음과 같이됩니다

어떻게 그 데이터를 Form :: select로 얻을 수 있습니까?

Form::select을 사용하는 경우 Data::lists('word','id')으로 전화하여보기로 전달할 수 있습니다. 하지만 이걸 사용하면 ID와 단어 인 2 개의 데이터를 얻을 수 있습니다.

어떻게하면 id, rel and word with Form::select 인 모든 데이터를 가져올 수 있습니까? 도와주세요.

+0

에 이전 입력을 줄 것이다합니다. 'Form :: select()'는 매우 간단한 출력을 제공하기 위해 디자인되었습니다. 이 일을 많이하게되면이 산출물을 산출하기 위해 항상 자신 만의 함수를 작성할 수 있습니다. –

+0

explaination을 가져 주셔서 감사합니다. 어쩌면 이것을 위해 도우미 함수를 만들어야합니다. – user2194246

답변

0

Laravel 정 FormBuilderHtmlBuilder모두에 대한 모든을 생산하지 않을 수 있습니다. 테일러 그 자신은 그것이 희박하고 단순하게 유지하기를 원한다고 말했다. 지금 가지고있는 해결책은 아마도 간단한 루프를 사용하여 갈 수있는 최선의 방법 일 것입니다.

Form::select은 옵션 요소의 다른 속성을 자동으로 채울 수 없습니다. 이 기능을 원하면 사용자 정의 매크로를 만들거나 고유 한 양식 생성기를 작성해야합니다.

아마 당신이 대답하는 것은 아니지만 꽤 많이 요약 해줍니다.

+0

설명 해 주셔서 감사합니다. 귀하의 제안처럼 만들어 보겠습니다. – user2194246

0

그냥 ... 솔루션을 업데이트 할

<select name="name" id="name"> 
@foreach($datas as $data) 
<option value="{{ $data->id }}" {{ (Input::old('name', 0) === $data->id ? ' selected="selected"' : '') }} rel="{{ $data->rel }}">{{ $data->word }}</option> 
@endforeach 
</select> 

이 선택한 옵션

당신이 이미하고있는 것은 의미가
관련 문제