Laravel的独特系列

时间:2016-01-02 07:05:47

标签: php loops laravel-5

我需要找出独特的价值。所以我尝试了下面的代码。这是通过未定义的变量错误。

控制器:

wp_ajax_AJAX_ACTION

网页浏览:

$employee = Employee::all();
Return view ('page', compact('employee'));

但我得到$uniqueEmpLoc = $employee->unique('location')->values()->list('location')->toArray(); @Foreach($uniqueEmpLoc as $empLoc) {{ $empLoc }} //this is select box used for search @endforeach //Display Entire data @foreach($employee as @employee) //Display all value @endforeach 未定义的错误。我正在使用LARAVEL 5.1。请帮我解决这个问题。

3 个答案:

答案 0 :(得分:1)

您的代码中存在一些错误:

  1. 我不认为compact(employee)会起作用。不应该假设是compact('employee')
  2. 在刀片中,根本不需要放置花括号。删除它们。
  3. 尝试以下内容:

    $employees = Employee::unique('locations')->values()->list('location')->toArray();
    return view('page', compact('employees'));
    

    然后在你看来:

    @foreach($employees as $employee)
        {{ $employee }}
    @endforeach
    

    希望这会帮助你。快乐的编码。欢呼声。

答案 1 :(得分:1)

在控制器中使用此查询

$employees = Employee::distinct()->list('location')->toArray();
return view('page', compact('employees'));

在视图中

@foreach($employees as $employee)
    {{ $employee }}
@endforeach

答案 2 :(得分:0)

我在这里同意其他答案,此代码应在控制器中。您不应该在视图中进行逻辑处理。

在控制器中执行以下操作:

$uniqueEmpLoc = $employee->unique('location')->values()->list('location')->toArray();
$employee = Employee::all();
Return view ('page', compact('employee', 'uniqueEmpLoc'));

您的代码无法正常运行的原因是,定义$uniqueEmpLoc的行被刀片解释为文本,而不是代码。

如果您真的要在视图中执行此操作,则需要将其包装在@php标签中。

@php
$uniqueEmpLoc = $employee->unique('location')->values()->list('location')->toArray();
@endphp
@Foreach($uniqueEmpLoc as $empLoc)
  {{ $empLoc }}
 //this is select box used for search 
@endforeach