對不起,我的英語。超薄型號db實例
堆棧:Slim 3框架+ Eloquent ORM。 雄辯正如Slim所期望的那樣運作。
我想使用MVC模式的排序,其中薄控制器和脂肪模型(所有的數據庫查詢等重邏輯)。
我所發現的是如何使用它的路線是這樣的:
$app->get('/loans', function() use ($app) {
$data = DB::table('loan_instalment')->get(); // works
$data = $this->db->table('loan_instalment')->get(); // works
...
}
我想是調用從choosen模型的公共方法的能力,這樣的事情:
use \src\models\Instalment;
$app->get('/loans', function() use ($app) {
$data = $this->model('Instalment')->getSomething(12);
...
}
和型號類是:
namespace src\models;
use Illuminate\Database\Eloquent\Model as Model;
use Illuminate\Database\Capsule\Manager as DB;
class Instalment extends Model
{
protected $table = 'loan_instalment';
public function getSomething($id)
{
return $this->table->find($id);
}
// bunch of other methods
}
我的應用程序看起來像basic Slim skeleton,雄辯設置:
$capsule = new \Illuminate\Database\Capsule\Manager;
$capsule->addConnection($container['settings']['db']);
$capsule->setAsGlobal();
$capsule->bootEloquent();
$container['db'] = function ($container) use ($capsule){
return $capsule;
};
這可能嗎?
是。但這裏沒有問題。 – geggleto
問題很明顯。怎麼做 ? –