【发布时间】:2014-09-11 00:17:55
【问题描述】:
我正在使用 Laravel 4,并且我有两个与“多对多”相关的表:“Actividad”和“Material”。每个 Actividad 都可以有一个或多个 Material,每个 Material 都可以属于一个或多个 Actividad。
所以,我制作了一个表格来创建一个新的 Actividad,您可以在其中保存一个或多个材料。我已经用多选输入做到了这一点。像这样:
{{ Form::label('material_id', 'Material necesario:') }}
<p>{{ Form::select('material_id', $material_id, Input::old('material_id'), array('multiple')) }}</p>
我不知道我做得是否正确,但是在保存任何东西之前,我的第一个问题是我只获得了一个结果。我想我应该在表单中“检查”每个选项......我的控制器的相关部分是:
$material = Input::get('material_id');
return var_dump($material);
我应该获得一个选择的选项列表,但在我的浏览器中的结果是:
字符串(1)“1”
这是我第一次以这种方式处理相关表,可能我做错了什么(在表单中、在我的控制器中、在我的模型中……)
非常感谢您的帮助!!
【问题讨论】:
-
您需要传递
materials[]数组而不是单个material_id。您传递给表单选择的$material_id是什么? -
谢谢 dczo,你正要通过数组! ;)
标签: forms laravel-4 many-to-many eloquent multi-select