如何在 Symfony 2 中为数据库视图设置实体(原则)
2022-08-30 14:40:32
假设我有一个视图表。我想从中获取数据到一个实体。我可以(以及如何)创建实体类来执行此操作(不需要保存操作)?我只想展示它们。
假设我有一个视图表。我想从中获取数据到一个实体。我可以(以及如何)创建实体类来执行此操作(不需要保存操作)?我只想展示它们。
接受的答案是正确的,但我想提供一些您可能需要考虑的其他建议:
将实体标记为只读。
将构造函数设为私有,以便只有 Doctrine 可以创建实例。
/**
* @ORM\Entity(readOnly=true)
* @ORM\Table(name="your_view_table")
*/
class YourEntity {
private function __construct() {}
}
查询视图没有什么特别之处 — 它只是一个虚拟表。以这种方式设置实体的表,并享受:
/**
* @ORM\Entity
* @ORM\Table(name="your_view_table")
*/
class YourEntity {
// ...
}