这是Laravel 5项目。 我有一个标准表格正在提交。我正在尝试发送从在vue组件中添加的搜索功能的结果中单击的每个帐户的ID。
然后,将单击的详细信息存储在称为“ grantedUsers”的隐藏形式输入中。这具有存储多个值的能力。因此,我使用了GrantUsers []这个名称。
在将表单提交给后端后,我就对值进行了DD处理,它显示了所有值,但在一个索引中而不是每个索引中都有单独的索引。使其更难以有效处理数据。
我显然将值错误地提交给隐藏的输入。将每个ID分成单独的索引将为您提供任何帮助。
代码
<input type="hidden" name="grantedUsers[]" :value="hiddenData">
//hiddenData is an empty array at initialisation.
data() {
return {
keywords: null,
results: [],
granted: [],
hiddenData: []
};
},
addUser(result) {
this.granted.push(result);
this.results.splice(this.results.indexOf(result), 1);
this.hiddenData.push(result.id);
},
removeUser(grantee) {
this.results.push(grantee);
this.granted.splice(this.granted.indexOf(grantee), 1);
this.hiddenData.splice(this.hiddenData.indexOf(grantee.id), 1);
}
//The backend is outputting this on the DD
array:1 [▼
0 => "1,2"
]
我正在努力证明
array:2 [▼
0 => "1"
1 => "2"
]
答案 0 :(得分:0)
仅在您有多个具有该名称的输入字段时,才在输入字段的名称中添加[]
。不会将单个字段的值转换为数组。
因此,您只需从名称中删除[]
,然后对字符串进行简单的explode
使其成为数组即可。
dd(explode(',', $request->grantedUsers));