gpt4 book ai didi

laravel - 何时使用 Eloquent (ORM) 而不是 Fluent(查询生成器)?

转载 作者:行者123 更新时间:2023-12-02 08:47:20 25 4
gpt4 key购买 nike

也许由于我的 Codeigniter 背景,我发现自己不太喜欢 Laravel 4 的 Eloquent ORM。假设我想编写一个查询,按 id 降序对帖子列表进行排序,那么 Eloquent 如何能击败 DB::table('posts')->orderBy('id', 'desc')->get(); 的清晰度? ?

是否有充分的理由使用 Eloquent 而不是 Fluent,它主要用于连接表吗?

最佳答案

我也来自 codeigniter,这是我的经验:我通常一起使用 Eloquent 和 Fluent。 Eloquent 可以让你很好地处理关系、CRUD 操作等。当你需要做一些 SQL 操作时,你可以轻松添加一些流畅的函数

在您上面提到的示例中,我看到您有帖子表。如果您有一个 post 模型,那么使用 Eloquent 编写的相同内容是:

Post::orderBy('id', 'desc')->get();

据我所知,如果您将 Eloquent 扩展为

Model_name::some_functions

相同
DB::table('table_name')->some_functions

当您需要创建或更新模型,或者例如获取帖子评论时,真正的力量就会出现。这变得很容易:

$comments = Post::find($id)->comments;

所以答案是 - 你必须使用流畅的函数来获取有序列表。您可以将它们与 DB::table('posts')->orderBy 或 Post::orderBy

一起使用

关于laravel - 何时使用 Eloquent (ORM) 而不是 Fluent(查询生成器)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17739931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com