Как создать модель Laravel без Красноречивого?

Как я не уверен, возможно ли создавать модели с классом DB вместо Eloquent? Я хочу держаться подальше от ORM.

благодаря

Related of "Как создать модель Laravel без Красноречивого?"

Да, конечно, это возможно. Вам не нужно расширять любой класс, чтобы создать класс модели, который инкапсулирует бизнес-логику и состоит из методов, вызывающих класс DB.

Просто создайте свою модель внутри app/models/MyModel.php как это

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

то вы должны быть в порядке, чтобы вызвать ваш новый класс статически:

 $data = MyModel::getMyData(); 

Если бы вы хотели расширить класс DB, вы могли бы, хотя более вероятно, что вы хотели бы расширить класс Database / Builder для расширения функциональности, но это сложная тема, и я подозреваю, что вы задали бы совершенно другой вопрос, если бы это было то, что вы были после.

Как я окончательно заметил, я бы не избежал «Красноречивого», это самое замечательное в Laravel среди множества других замечательных вещей

Просто удалите «extends Eloquent» и создайте запросы, используя класс DB.

Гуфи,

Вы должны сделать свою функцию статической.

Например,

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