2017-12-01 15 views
0

로그인 한 사용자를 선택한 값으로 설정하려고 시도했지만 드롭 다운 값 목록을 확인하면 Admin.I와 같은 반복되는 값이 표시됩니다. 사용자 테이블에서 값을 드롭 다운하고 있습니다 데이터베이스에 저장 됨 ....이 문제를 해결하려면 도움을주십시오.중복 값을 표시하는 동적 드롭 다운 5.2

여기에 사용자의 드롭 다운이 있으며 관리자가 현재 사용자로 선택되어 있습니다.

enter image description here

사용자 컨트롤러 :

$users = User::all(); 
$current_user = Auth::user()->name; 
쿼리에 Laravel 블레이드에

동적 드롭 다운 ..

<select name="recieved_by" class="form-control"> 
    <option value="{{ $current_user }}" selected>{{ $current_user }}</option> 
    @foreach($users as $user) 
    <option value="{{$user->name}}">{{ $user->name }}</option> 
    @endforeach 
</select> 
+0

내 대답을 확인하고 작동하는지 알려주세요. –

답변

0

사용 GROUPBY 제거하기 중복. 그것은 당신의 선택 드롭 반복되지 않도록

또한 아래와 같이 아래 쿼리에서 현재 사용자를 제거 :

$current_user = Auth::user()->name; 
$users = User::where('name','!=',$current_user)->groupBy('name')->get(); 
0
$users = array(); //declare an array 

    @foreach($users as $user) 
     $users['name'] = $user->name; 
    @endforeach 
    $users = array_unique($users); 

사용하기 전에 foreach() 루프

희망이 당신을 도울 것입니다 .

laravel 개발자에게

감사를하지 나처럼 구문을 확인하시기 바랍니다,

+0

나에게이 오류를 준다 array_unique()는 매개 변수 1이 배열이고, 주어진 객체가 – ma123456

+0

$ users가 배열 또는 객체라고 예상합니까? –

+0

$ users는 객체의 배열입니다 ... 각 객체는 사용자의 데이터를 포함합니다. – ma123456

0
<select name="recieved_by" class="form-control"> 

     @foreach($users as $user) 
      @if($current_user==$user->name) 
       <option value="{{ $current_user }}" selected>{{ $current_user }}</option> 
      @endif 
      <option value="{{$user->name}}">{{ $user->name }}</option> 
     @endforeach 

</select>