【问题标题】:Getting all values from laravel relationship table从 laravel 关系表中获取所有值
【发布时间】:2021-04-07 14:26:36
【问题描述】:

我在账单的 laravel 模型中有以下关系,

    protected $table = 'purchase_bills';
    protected $primaryKey = 'bill_id';

    public function vendors()
    {
        return $this->belongsTo(Vendors::class);
    }

供应商的以下关系,

    protected $table = 'vendors';
    protected $primaryKey = 'vendor_id';
    public function bills()
    {
        return $this->hasMany(Purchasebills::class, 'bill_id');
    }

现在我正在尝试使用以下代码获取特定供应商的所有账单,

        $bills = Vendors::find(1)->bills()->where('vendor_id', $vendor_id);
        return Datatables::of($bills)->make();

但如果是第一行,它总是只返回表中的 1 行,即使有很多账单。

如何从该 vendor_id 获取所有账单?

【问题讨论】:

  • 你能dd(Vendors::find(1)->bills()->get())看看你得到了什么吗?

标签: laravel relationship


【解决方案1】:

我可以解决这个问题,实际上,这是模型中的错误外键分配, 下面是正确的。

return $this->hasMany(Purchasebills::class, 'vendor_id');

【讨论】:

    猜你喜欢
    • 2019-09-18
    • 2021-08-06
    • 2016-08-03
    • 1970-01-01
    • 2017-12-19
    • 2021-02-09
    • 1970-01-01
    • 2014-03-02
    • 1970-01-01
    相关资源
    最近更新 更多