我正在尝试允许我的用户将标签添加到已提交的职位发布中。
为此,我使用了bootstrap-tokenfield插件。
用于收集数组并提交的Jquery脚本:
//create a new array and push the skills on to it.
var tokenfield = new Array();
$(".skills").each(function() {
tokenfield.push($(this).val());
});然后使用ajax将其与所有表单详细信息一起提交给我的控制器函数。
控制器:
//save job
$job = new Job;
$job->user_id = $this->userID;
//other fields...
$job->save();
//After job is saved iterate over tokenfield array and save to pivot table using Laravel Eloquent properties:
foreach($_POST['tokenfield'] as $val){
//only skill name is passed from form. Find id:
$skill = Skill::where('name','=', $val)->first();
if(JobSkill::create(array('job_id' => $job->id, 'skill_id' => $skill->id)))
{ return Response::json(array('success' => 200));}我得到了一个错误:试图获取与$skill->id相关的非对象的属性,所以我做了一个dd($_POST‘’tokenfield‘);结果是:
array(1) { [0]=> string(33) "Window Installation, deck removal"}我的问题是:我没有正确地创建数组,或者我在控制器中没有正确地接受它吗?提亚
发布于 2014-08-27 23:49:14
简单地说,Laravel不接受$_POST‘’tokenfield‘
JAVA不是很好,但是
var tokenfield = new Array();
$(".skills").each(function() {
tokenfield.push($(this).val());
});这不是命中注定的吗?
var tokenfield = new Array(
$(".skills").each(function() {
tokenfield.push($(this).val());
}));如果我错了,请纠正我,但对我来说,这看起来像是控制器找不到post数据
https://stackoverflow.com/questions/25531324
复制相似问题