【问题标题】:Sql request to Eloquent ORM laravel对 Eloquent ORM laravel 的 Sql 请求
【发布时间】:2022-01-15 00:24:50
【问题描述】:

我有一个个人项目的小问题,我承认我真的不明白如何用 Laravel 的 eloquent 来解决这个问题。我可以进行 sql 查询,但是将其转换为 eloquent 时遇到了很大的问题。 这是我的问题:我想将两个表链接到一个中间表。

这是我的中间表: 所有列:

dish_type_id |  recipe_id

这是我的食谱表: 所有列:

recipe_id|  label | image | etc...

这是我的 disc_type 表: 所有列:

dish_type_id |  dish_name

我想用我的中间表显示食谱和菜肴的所有信息: 这是我的 sql 请求:

select * from recipes_dish_type as rcpDish join dish_type dish on dish.DISH_ID = rcpDish.DISH_ID join recipes rcp on rcp.RECIPE_ID = rcpDish.RECIPE_ID;

目前,我有一个 RecipeDishType 模型。

是否有任何与雄辩的解决方案来拥有相同的东西? 我检查了belongsTo,但只有一种方法

【问题讨论】:

    标签: php laravel eloquent


    【解决方案1】:

    您可以使用with() 预先加载这些关系:

    $dishTypes = DishType::with(['recipe', 'dish'])->get();
    

    仔细检查“食谱”和“菜肴”是否适合您的人际关系。

    【讨论】:

    • 非常感谢您的回答,实际上我看到我不太了解belongsTo和hasMany的关系,尤其是在什么情况下使用它。即使有 Laravel 提供的文档也很难理解,你能举个例子吗?
    猜你喜欢
    • 1970-01-01
    • 2014-06-07
    • 2013-10-02
    • 2013-02-12
    • 2016-07-01
    • 2016-09-24
    • 2013-12-28
    • 2019-08-01
    • 1970-01-01
    相关资源
    最近更新 更多