为什么所有查询都在控制器文件中编写而不是在laravel中的模型

时间:2018-04-04 01:10:50

标签: php laravel laravel-5 mysqli eloquent

这样雄辩的查询
$flight = App\Flight::find(1);

$flight->name = 'New Flight Name';

$flight->save();

写在控制器文件中。 为什么这不在模型文件中。我在问,因为模型是用于数据库操作的。不是吗?

1 个答案:

答案 0 :(得分:1)

以下是关于什么是雄辩模型的laravel文档的摘录 -

  

每个数据库表都有一个相应的"模型"用于与该表交互。模型允许您查询表中的数据,以及在表中插入新记录。

这意味着,模型文件只是数据库中表的类表示

例如App\Flight是与 Flights 表对应的类,因此您可以使用Flight类编写有说服力的查询。

不同表之间的关系也在模型文件中定义。

Controller是您实际使用模型来查询数据库和编写核心逻辑的文件。将控制器视为数据库和视图之间的中介。

希望如果清除概念:)