【发布时间】:2020-12-28 00:51:51
【问题描述】:
我正在尝试在 laravel 中使用 Vue.js 为我的数据库创建一条新记录,我的 API,数据还可以。但是当我在我的网站上单击创建时,我得到了那个奇怪的错误。
传递给 Illuminate\Database\Grammar::parameterize() 的参数 1 必须是数组类型,给定字符串,在 C:\Users\PC\Desktop\Productivity\gitdemo\students\vendor\laravel 中调用\framework\src\Illuminate\Database\Query\Grammars\Grammar.php 在第 884 行
我也有完美的删除功能,但这不起作用...表单输入有v-model,这看起来不错,但它仍然不起作用。
我在 vue.js 上的创建方法
addStudent() {
axios.post(`api/students/create`, {data:this.students});
}
在 vue.js 中获取记录
data() {
return{
students: [],
}
},
created() {
axios.get(`api/students`).then(response =>{
this.students = response.data.data;
})
},
控制器
public function store(Request $request)
{
Student::create($request->all());
return view('welcome');
}
路由(在 api.php 中)
Route::post('students/create', 'StudentController@store');
学生模型
use SoftDeletes;
protected $dates = ['birth_date'];
protected $guarded = [];
数据中的学生数组具有所有v-model 命名
【问题讨论】:
-
显示你的后端代码。
-
你的意思是控制器?
-
我已经更新了@AhmadMobaraki 的问题
-
请给我看看学生模型
-
这样试试,只返回学生
return Student:create($request->all());