用户有很多带有文件夹的项目

时间:2019-03-02 03:06:07

标签: php laravel laravel-5 eloquent

我正在尝试进行口才查询,我可以从中获取特定文件夹的Auths用户费用。

例如,获取链接到ID为2的文件夹的所有Auth Users费用。

我有3张桌子,

    expenses
    -----------
    id


    folders
    -----------
    id


    folder_expense
    -----------
    id
    expense_id
    folder_id

目前,我将这些作为模型。

User
---------------
public function expenses() {
        return $this->hasMany('App\Expense', 'user_id', 'id');
    }

    public function folders() {
        return $this->hasMany('App\Folder', 'user_id', 'id');
    }


Expense
---------------
public function user() {
        return $this->belongsTo('App/User', 'user_id');
    }

    public function folders() {
        return $this->belongsToMany('App/Folder', 'folder_expense', 'folder_id', 'id');
    }


Folder
---------------
public function user() {
        return $this->belongsTo('App/User', 'user_id');
    }

    public function expenses() {
        return $this->belongsToMany('App/Expense', 'folder_expense', 'expense_id', 'id');
    }

我已经使数据透视表认为我可以做这样的事情

Auth::user()->expenses()->folders()->where('folder_id', 2)->get()

1 个答案:

答案 0 :(得分:1)

怎么样?

Auth::user()->folders()->where('id', 2)->with(['expenses'])->get()