问题描述
我使用了所有五种方法,但没有一种起作用。而不是存储在数据库中。
我在+
表中有一行
我的表单就像这个演示
我的刀片
NULL + 'anything'
我的控制器
educationals
我收到此错误。
获得dd后:
解决方法
您使用了错误的变量来获取期望值。在您的示例中,grade_id
不是数组,而是空值,因为您在请求正文的根级别中没有grade_id
,但是在study
属性中。
如果$request->study
已经是包含那些所需值的数组,那么您只需通过$request->study[property]
检索它们即可。
考虑:
Educational::firstOrCreate(['user_id' => auth()->id()],[
'grade_id' => $request->study['grade_id'],'field' => $request->study['field'],'institution_id' => $request->study['institution_id'],'branch' => $request->study['branch'],'institution_education' => $request->study['institution_education'],'gpa' => $request->study['gpa'],'nation_id' => $request->study['nation_id'],'province_id' => $request->study['province_id'],'town_id' => $request->study['town_id'],'province_name' => $request->study['province_name'],'town_name' => $request->study['town_name'],'entrance' => $request->study['entrance'],'graduate' => $request->study['graduate'],'currently_studying' => $request->study['currently_studying'] ? true : false,]);
您会看到只是通过学习来检索所有内容。
事实上,这很容易,因为所有请求字段的名称都与模型的属性相同,因此请执行以下操作:
Educational::firstOrCreate(['user_id' => auth()->id()],$request->study);