我是Laravel和Ajax的新手,并且我有工作代码(见下文)。
我有2张桌子,标准和评分。
我想先查询名为(select * from criteria where level = 1)
之类的标准表,
然后使用结果,我想使用查询结果的某些字段+用户的一些输入变量将多个行保存在“等级”中。
赞:
for (i = 0; i < criteria-result.length; i++) {
$addItem= New Rating;
$addItem->empname = $request->empname; //this is from user this is a repeating value
$addItem->criteria = criteria-result[i].(criteria)
}
现有的Ajax:
$.ajax({
type: 'POST',
url: 'generate-rating-criteria',
data: {
'employee_name': $("#emp_name").text(),
},
success: function()
{
swal("Saved", "Ok", "success")
},
error: function(xhr, status, error)
{
var err = eval("(" + xhr.responseText + ")");
alert(err.Message);
}
});
现有控制器:
$addItem= New Rating;
$addItem->employee_name = $request->employee_name;
$addItem->save();
答案 0 :(得分:0)
您可以只使用count()方法来代替长度。
$criteria = DB::table('criteria')->where('level', 1)->get();
for ($i = 0; $i < count($criteria); $i++) {
$addItem= New Rating;
$addItem->empname = $request->empname;
$addItem->criteria = $criteria[$i]->criteria; /* if criteria column exist in the rating table. */
$addItem->save();
}