我不确定,是否可以使用DB Class而不是Eloquent创建模型?我想远离ORM。
由于
答案 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();
}
}