我想遍历数组并将其插入数据库。当我检查dd($ request-> users)时,它显示为“ NULL”,但是如果我将dd($ request-> all())放入,则出现数据数组。另外,下面的控制器代码不会将数据插入数据库。谢谢
脚本
<script>
export default {
data(){
return{
users: [{
username:'',
password:'',
phone:'',
email:''
}]
}
},
methods:{
addMoreData(){
this.users.push({
username: '',
password: '' ,
email: '',
phone:''
});
},
deleteData(index){
this.users.splice(index,1)
},
submitData(){
axios.post('/api/user', this.users)
}
},
mounted() {
console.log('Component mounted.')
}
}
控制器
public function store(Request $request)
{
for ($i = 1; $i < count($request->all()); $i++) {
data::create([
'username'=>$request->username[$i],
'password'=>$request->password[$i],
'phone'=>$request->phone[$i],
'email'=>$request->email[$i]
]);
}
}
已编辑
答案 0 :(得分:1)
我认为这应该在您的情况下起作用。
public function store(Request $request)
{
foreach($request->all() as $user){
$u = User::create([
'username'=>$user['username'],
'password'=>$user['password'],
'phone'=>$user['phone'],
'email'=>$user['email']
])
return ...
}
}
但是,如果要从前端发送用户,则需要将用户放置在名为用户的新数组中。 祝你好运。
答案 1 :(得分:0)