如何在没有Eloquent的情况下创建Laravel模型?

时间:2014-01-14 10:59:16

标签: php orm laravel laravel-4 eloquent

我不确定,是否可以使用DB Class而不是Eloquent创建模型?我想远离ORM。

由于

3 个答案:

答案 0 :(得分:16)

当然可以。您不需要扩展任何类来创建一个封装业务逻辑的模型类,并且包含调用DB类的方法。

只需在app/models/MyModel.php内创建您的模型

class MyModel{

    public static function getMyData(){
         DB::table('users')->select('column')->get();

    }
}

然后你可以静静地打电话给你的新班级:

$data = MyModel::getMyData();

如果你想扩展数据库类,你可能希望扩展Database / Builder类以扩展功能,但这是一个复杂的主题,我怀疑你会问一个非常不同的问题,如果这个是你所追求的。

正如我最后指出的那样,我不会避开Eloquent,这是Laravel在很多其他伟大事物中最伟大的事情

答案 1 :(得分:2)

只需删除“extends Eloquent”并使用DB类构建查询。

答案 2 :(得分:1)

高飞,

你应该让你的功能保持静止。

例如,

class Type {
    public static function type_get() {
        DB::table('story_types')->get();
    }
}