Laravel foreach循环不输出到形式

时间:2016-05-08 06:09:07

标签: php forms laravel

以下是我的Laravel 5项目的表格:

  <form class="form-group" action="/counselors/{{ $counselor->id }}/badges/add" method="post">
    <input type="hidden" name="_token" value="{{ csrf_token() }}">
        @foreach($badges as $badge)
            <div class="input-group">
              <span class="input-group-addon">
                <input type="checkbox" style="float: left" value="{{ $badge->id }}">&nbsp;{{ $badge->name }}
              </span>
            </div>
        @endforeach
        <br>
        <input type="submit" class="form-control btn btn-primary" name="submit" value="Submit"><hr>
        <input type="button" class="form-control btn btn-danger" name="cancel" value="Cancel" onClick="location='/counselors'">
    </form>

$ badges是来自数据库的徽章集合。它们都会正确迭代和显示,但是当我用

查看请求数据时
$request->all()

它返回:

{"_token":"5E4csIJU4YVVQZSoPG1EmpfHfjNjYcRwuOoreCcE","submit":"Submit"}

它不包含循环中的复选框数据。这是不正确的?最好的方法是什么? $ badges集合中有160个项目。

我很新,所以请放轻松。

1 个答案:

答案 0 :(得分:1)

名称属性添加到输入复选框并为其赋予值

<input type="checkbox" name="check-{{ $badge->id }}" style="float: left" value="{{ $badge->id }}">&nbsp;{{ $badge->name }}

注意: 在这里我使用名称&#34;检查 - &#34;和徽章的ID,以获得每个复选框的不同名称