2013-07-12 4 views
26

laravel을 사용하여 양식에 선택 상자를 만듭니다. 나는 도우미를 사용하여 선택 상자를 만들었으며 모두 잘 작동합니다.laravel eloquent lists - 열 값 목록 정렬

내가 데이터베이스에서 선택 상자에 대한 데이터를 검색하고 데이터를 검색하려면 다음을 사용하십시오

$data = model::lists('name','id') 

다시 모든 작품을 좋아하고이 예상되는 배열을 반환

내 문제는 비록 내가있다 이 목록을 정렬 할 수없는 것 같습니다. orderBy()를 추가했지만 기쁨은 없었습니다.

네이티브 PHP 함수를 사용하는 것 외에 laravel 메서드를 사용하여 목록을 정렬 할 수 있습니까?

+0

위대한 질문 : Laravel 버전 5.3lists에서 시작


사용되지 않는 일 대신 pluck을 사용하는 것입니다. 일반적으로 Laravel을 사용하여 select를 채울 배열을 만들려면 쿼리의 where, 등을 넣어야합니다. –

답변

63

당신은 당신이 원하는대로두고, 다음을 나열 할 수 있습니다. 내 말은 :만큼 lists이 체인의 마지막 방법으로, 다른 방법은 잘 작동

model::orderBy('orderByColumn')->lists('name', 'id'); 

.

model::orderBy('orderByColumn')->pluck('name', 'id'); 
+1

일단 배열을 얻으면 PHP 배열 정렬을 사용할 수있다. [PHP : 배열 정렬] (http://es1.php.net/manual/en/array.sorting.php) –

+0

우수 - 감사합니다. 나는 명단을 따랐다. 나는 이러한 기능의 순서를 깨닫지 못했다. 다시 한 번 감사합니다 – Ray

+0

감사합니다, 감사합니다, @ umut - sirin. 디트로이트에서 온 많은 사랑! –

4

당신은 시도 할 수 있습니다 : 문제가 해결되지 않으면

$data = model::select('name','id')->orderBy('name'); 

가, 마지막에 ->get()을 던져 :

$data = model::select('name','id')->orderBy('name')->get(); 
+0

안녕하세요 - 저는 이것을 시도했지만 데이터가 의도 된 HTML 선택 도우미에서 객체를 구현하는 데 어려움을 겪었습니다. 결과는 정확했지만 실행할 수 없었습니다. 리스트는 내가 필요한 정확한 데이터를 포함하고있어서 더 쉬웠다. – Ray