php - 如何访问与另一表相关的一列 Laravel 5.1

标签 php mysql laravel laravel-5 laravel-5.1

我有 3 个模型,Trials 有一个样本,track 有一个试验,我需要访问样本名称,我尝试这样做,但收到此错误:

BadMethodCallException in Builder.php line 2024: Call to undefined method Illuminate\Database\Query\Builder::samples()

Controller :

public function track($id){
        $tracks = track::with('trials')->with('samples')->where('trials_id',$id)->get();

        return view('Tracks.index',compact('tracks'));
    }

示例:

class samples extends Model
{
    protected $fillable = ['variety'];

    public function Trials()
    {
        return $this->belongsTo('App\trial');
    }

试用:

class trial extends Model
{
    protected $fillable = ['amount','date','comments','code'];

    public function Samples()
    {
        return $this->hasOne('App\samples', 'id', 'samples_id');
    }

    public function Track()
    {
        return $this->belongsTo('App\track');
    }
}

轨道:

class track extends Model
{
    public function Trials()
    {
        return $this->hasOne('App\trial', 'id', 'trials_id');
    }
}

最佳答案

尝试一下

$tracks = track::with('trials.samples')->where('trials_id',$id)->get();

引用:- Nested Eager Loading

关于php - 如何访问与另一表相关的一列 Laravel 5.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34154292/

相关文章:

PHP "unexpected $end"

php - 将自定义字体图标添加到视觉 Composer

php - 按特定顺序运行 PHPUnit 测试

mysql - spring boot war 文件没有连接到 kubernetes 中的 MySQL 数据库?

php - 行为 "Unrecognized options"

php - Cakephp 错误消息可能是我的 .htaccess 文件

php pdo登录失败

php - 用于搜索器的两个非关系表的 SQL 语句

php - 在 Laravel 5.5 中使用 Carbon 来比较 2 个日期

php - 在 laravel 5.2 中使用 pagination() 的 distinct() 不起作用