在 laravel 中搜索时获取关系数据
Get relation data when search in laravel
我有 laravel 5.6 个项目
这是我的模型代码
public function getClassTreaner()
{
return $this->hasOne('App\User', 'id', 'class_treaner');
}
public static function searchScoop($keyword)
{
$data = Classe::where('id','like','%'.$keyword.'%')
->orWhere('class_name','like','%'.$keyword.'%')
->limit(30)
->get();
return $data;
}
现在,当我在 js 代码中使用 Searchscoop
时,它看起来像这样:
$.ajax({
type:'POST',
url: path+'classsearch',
data: {data:this.message},
success:(data) => {
if(data.length >= 1)
{
for(i = 0;i<data.length;i++)
{
this.arrayresults.push({id:data[i]['id'],class_name:data[i]['class_name'],class_start_time:data[i]['class_start_time'],class_end_time:data[i]['class_end_time'],class_date:data[i]['class_date'],class_treaner:data[i]['get_class_treaner']})
}
this.ok = true;
}
else
{
this.ok = false;
this.noresult = true;
}
},
error:function()
{
console.log("error");
}
});
这一行:
this.arrayresults.push({id:data[i]['id'],class_name:data[i]['class_name'],class_start_time:data[i]['class_start_time'],class_end_time:data[i]['class_end_time'],class_date:data[i]['class_date'],class_treaner:data[i]['get_class_treaner']})
最后的结果get_class_treaner
我无法访问模型关系视图ajax。
我试着写名字 getClassTreaner
,但是我无法访问 ajax 中的模型数据。
如果在后端加载它,则只能在前端访问关系:
$data = Classe::where('id','like','%'.$keyword.'%')
->orWhere('class_name','like','%'.$keyword.'%')
->limit(30)
->with('getClassTreaner')
->get();
我有 laravel 5.6 个项目 这是我的模型代码
public function getClassTreaner()
{
return $this->hasOne('App\User', 'id', 'class_treaner');
}
public static function searchScoop($keyword)
{
$data = Classe::where('id','like','%'.$keyword.'%')
->orWhere('class_name','like','%'.$keyword.'%')
->limit(30)
->get();
return $data;
}
现在,当我在 js 代码中使用 Searchscoop
时,它看起来像这样:
$.ajax({
type:'POST',
url: path+'classsearch',
data: {data:this.message},
success:(data) => {
if(data.length >= 1)
{
for(i = 0;i<data.length;i++)
{
this.arrayresults.push({id:data[i]['id'],class_name:data[i]['class_name'],class_start_time:data[i]['class_start_time'],class_end_time:data[i]['class_end_time'],class_date:data[i]['class_date'],class_treaner:data[i]['get_class_treaner']})
}
this.ok = true;
}
else
{
this.ok = false;
this.noresult = true;
}
},
error:function()
{
console.log("error");
}
});
这一行:
this.arrayresults.push({id:data[i]['id'],class_name:data[i]['class_name'],class_start_time:data[i]['class_start_time'],class_end_time:data[i]['class_end_time'],class_date:data[i]['class_date'],class_treaner:data[i]['get_class_treaner']})
最后的结果get_class_treaner
我无法访问模型关系视图ajax。
我试着写名字 getClassTreaner
,但是我无法访问 ajax 中的模型数据。
如果在后端加载它,则只能在前端访问关系:
$data = Classe::where('id','like','%'.$keyword.'%')
->orWhere('class_name','like','%'.$keyword.'%')
->limit(30)
->with('getClassTreaner')
->get();