我在laravel 5.2中创建了一个测试博客网站,并尝试创建一个页面来管理所有类别。 到目前为止,一切工作正常,但我希望有一个包含类别列表的表,并对每个类别进行内联编辑。通常我会在其中创建一个表和一个foreach循环,每行都有一个表单,但这次它不能正常工作。我读到表格中的表格是一种不好的做法,所以我试图用div来制作它,但它也不起作用。
以下是视图的代码:
@foreach($categories as $category)
<form action="/blog/categories/edit/{{ $category->id }}" method="post">
<div class="row">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<div class="col-md-2"><input type="text" value="{{ $category->id }}" name="id" class="category-input-id" readonly="readonly"></div>
<div class="col-md-2">{{ $category->created_at }}</div>
<div class="col-md-2">{{ $category->updated_at }}</div>
<div class="col-md-2">
<label for"edit" class="btn btn-primary"><i class="fa fa-pancil"></i></label>
<input type="submit" id="edit" name="edit" class="hidden" />
<label for="delete" class="btn btn-danger"><i class="fa fa-trash"></i></label>
<input type="submit" id="delete" name="delete" class="hidden" />
</div>
</div>
</form>
@endforeach
在控制器中:
public function editcategory (Request $request, $id)
{
dd($request->all());
}
我没有粘贴所有代码来获取数据,因为我在这里没有收到正确的数据。
输出只是循环中的第一行! 每当我点击它时,它只获得第一个元素。
array:5 [▼
"_token" => "wUhnsw8AoAuUDsuElALg8nM91bFG4EkUHTEAkkjp"
"id" => "16"
"name" => "Category Name"
"description" => "desc test"
"edit" => "Send"
]
哪里出错了? 我也尝试将表单放在循环外面并使用数组作为元素(比如name =&#34; description []&#34;等等。)但我不知道如何获得正确的一次我通过了所有阵列!
由于
答案 0 :(得分:2)
如果您不需要表单,可以通过<a>
标记轻松完成此操作,还可以在以下表格中输出您的类别:
@foreach($categories as $category)
<tr>
<td style="text-align:center">{{$category->field1}}</td>
<td style="text-align:center">{{$category->field2}}</td>
<td style="text-align:center">{{$category->field3}}</td>
<td style="text-align:center">{{$category->field4}}</td>
<td style="text-align:center"><a href="{{URL::to('/blog/categories/edit/'.$category->id)}}">{{ Lang::get('global.edit')}}</a></td>
<td style="text-align:center"><a href="{{URL::to('/blog/categories/delete/'.$category->id)}}">{{ Lang::get('global.delete')}}</a></td>
</tr>
@endforeach
当您发送安全问题的帖子时,您需要传递令牌<input type="hidden" name="_token" value="{{ csrf_token() }}">
,但在您的情况下,您不需要通过<a>
标记获取帖子