快速提问,我正在学习Laravel 4,因为我来自Codeigniter,我注意到一些laravel教程在控制器中有他们的查询,有些在模型中有他们的查询。
我的问题是,我们应该在哪里编写所有查询以获得最佳实践?在控制器或型号?这适用于大型Web应用程序。
非常感谢
答案 0 :(得分:2)
最佳做法是在单独的图层中编写查询。因此与您的控制器分开,并与您的模型分开。控制器最佳实践还取决于项目的规模和您对可维护性的具体要求。
只要您扩展项目,尝试提取更多,因此可维护性不是问题。在用户模型周围的查询之间的层可以看起来像:
class UserRepository {
public function __construct(Illuminate\Database\DatabaseManager $db)
{
$this->db = $db;
}
public function getLatestUsers($limit = 5) {
//$this->db->table('users')->
}
}
有关更多最佳做法,您应该查看围绕laravel创建的所有资源。像