Изменить значение флажка страницы из базы данных - PullRequest
0 голосов
/ 20 апреля 2019

У меня есть таблица, как показано ниже

id |    name    |   pic   |     level     |  team
1     John          3           user           
2     Ipsum         4           user           
3     Lorem         5          supervisor     
4     Dolor Amet    5           admin         
5     Amet                     manager        3,4
6     Diego         7           user          
7     Michael       5           supervisor    

Я хочу, как ID пользователя 5, показать, какую команду я вижу в значении флажка, и отредактировать или изменить его в флажке. Я пытался, но это ошибка. Идентификатор пользователя 3, который был проверен, также отображается снова в непроверенном значении, как это screenshot

Таким образом, вид должен быть как ipsum (проверено) и dolor (не проверено), как this picture

Вот код вида лезвия

 @foreach($supervisor as $spv)          
    <div class="checkbox">
    @foreach($result as $res)
       @if($spv->id == $res->id)
         <label>
         <input type="checkbox" name="spv[]" value="{{ $spv->id }}" checked>{{ $spv->name }}
         </label>
       @else 
         <label>
         <input type="checkbox" name="spv[]" value="{{ $spv->id }}">{{ $spv->name }}

         </label>
      @endif
     @endforeach
   </div>
   @endforeach

Вот код контроллера

$query = DB::table('users')->where('id',$id)->first();

$list=explode(',', $query->team);
$result = DB::table('users')->whereIn('id',$list)->get();

$supervisor = Users::where('level','supervisor')->orWhere('level','admin')->get();

Вы знаете, где пропал?

1 Ответ

1 голос
/ 22 апреля 2019

Вы можете попробовать это:

В вашем контроллере сжать переменную $list, потому что это массив идентификаторов команды:

$query = DB::table('users')->where('id',$id)->first();

$list=explode(',', $query->team);
$result = DB::table('users')->whereIn('id',$list)->get();

$supervisor = Users::where('level','supervisor')->orWhere('level','admin')->get();

return view('your-blade-view', compact('result', 'supervisor', 'list'));

А затем InВаш клинок :

 @foreach($supervisor as $spv)          
     <div class="checkbox">
         <label>
             <input type="checkbox" name="spv[]" value="{{ $spv->id }}" {{ ( in_array($spv->id, $list) ) ? 'checked' : '' }}>{{ $spv->name }}
         </label>
     </div>
 @endforeach

Надеюсь, это будет полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...