javascript - Laravel 搜索时获取关系数据

标签 javascript php laravel vue.js laravel-5.6

我有 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我无法访问模型关系 View ajax。

我尝试编写名称getClassTreaner,但无法在ajax中访问模型数据。

最佳答案

如果您在后端加载关系,则只能在前端访问它:

$data = Classe::where('id','like','%'.$keyword.'%')
    ->orWhere('class_name','like','%'.$keyword.'%')
    ->limit(30)
    ->with('getClassTreaner')
    ->get();

关于javascript - Laravel 搜索时获取关系数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50086071/

相关文章:

javascript - Javascript中的Google Maps API,绘制圆的半径?

php - MySQL多个子查询,获取日期间隔内每一天特定列的第一个值

php - Laravel groupBy 列并根据数量列添加总计

laravel - 在 laravel 中使用外部类时找不到类

javascript - 滚动堆叠菜单

php - Javascript 相当于 PHP 的 md5() ,它也适用于多字节字符串?

javascript - 单击 .NET Core 中的单选按钮时,表单未提交

php - 每 2 小时使用 API 数据更新 MySQL

php - 使用当前数据+另一个表中定义的范围中的随机数更新数据库表

mysql - SQLSTATE[42S22] : Column not found: 1054 Unknown column in my code