laravel

时间:2018-02-21 04:13:42

标签: laravel

我正在使用laravel。我有两张桌子。一个是users,另一个是permission。我有两个foreach循环。一个是显示用户数据。用户数据来自users表。另一个foreach循环用于检查user表中permission是否可用。 我从users表中获取所有用户:

    $allTeachers = User::where('role',2)->paginate(4);

我也从这样的权限表中获取所有数据。

$allpermiteds = Specialpermission::where('add_teacher','!=','NULL')->get();

我已将这两个查询发送到我的视图中。它工作正常。 现在我在我的视图中打印这些用户数据,如此

@foreach($allteachers as $teacher)
            <tr> 
              <td>{{ $teacher->id}}</td>
              <td>{{ $teacher->name }}</td>
              <td>{{ $teacher->email }}</td>
              <td><button>give</button></td>
              <td><button>Remove</button></td>
@endforeach

我打印了两个按钮给予和删除。现在我想这样做,如果$teacher->idpermission列中有add_teacher,那么它应显示remove按钮。否则它应该显示add按钮。 我这样做了,但它没有正常工作。

@foreach($allteachers as $teacher)
        <tr> 
          <td>{{ $teacher->id}}</td>
          <td>{{ $teacher->name }}</td>
          <td>{{ $teacher->email }}</td>
          <td>@foreach($allpermitted as $p)
        @if($p->add_teacher == $teacher->id)
        <button>Remove</button>
        @else
       <button>give</button>
        @endif
@endforeach</td>
@endforeach

它显示了很多按钮。如果权限表中有4个用户,则会为每个4显示user个按钮。这是主要问题

提前致谢。

2 个答案:

答案 0 :(得分:0)

简单,从db中选择Private Sub Worksheet_Change(ByVal Target As Range) if not intersect(range("A:A, I:I"), target) is nothing then 'add error control on error goto safe_exit 'don't do anything until you know something has to be done dim r as range Application.EnableEvents = False For Each r In intersect(range("A:A, I:I"), target) r.Offset(0, 1).Value = Date 'do you want Date or Now? Next r end if safe_exit: Application.EnableEvents = True End Sub 列,然后将add_teacher个对象转换为如下所示的数组:

    
Specialpermission

然后使用$permissionData = Specialpermission::where('add_teacher','!=','NULL')->select('add_teacher')->get(); $allpermiteds = collect($permissionData )->map(function($x){ return (array) $x; })->toArray(); 检查权限检查

    
in_array

答案 1 :(得分:0)

我更喜欢使用定义两个表之间关系的eloquent函数with

$allTeachers = User::where('role',2)->with('SpecialPermisson')->paginate(4);

它会添加SpecialPermission字段(如果有)。如果没有,它会给你一个空白字段,所以检查它是否为空。