对不起,我的英语。超薄型号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
问题很明显。怎么做 ? –