我想向 Doctrine2 实体定义的列添加列描述(也称为“注释”),但找不到任何有关如何使用
@Column annotation
执行此操作而不可能破坏 Doctrine 的信息架构工具。
如果我使用
columnDefinition
的 @Column annotation
属性,就像
@Column(type="string" columnDefinition="COMMENT 'This is a column comment'")
注释参考指出
如果您使用“columnDefinition”,SchemaTool 将不再正确检测列上的更改。
有没有一种方法可以在不破坏 SchemaTool 的情况下定义列描述?
我得到的唯一线索是这个拉取请求,其结尾是“这是通过不同的方式解决的。”。
您可以使用注释的“options”参数向列名或整个表添加注释;例如:
/**
* @ORM\Column(type="string", options={"comment":"The string to show in the dropdown "})
*/
对于列或表:
/**
* @ORM\Entity
* @ORM\Table(name="application", options={"comment":"Funding applications"});
*/
但请注意,这不会向现有表或列添加注释,您必须从数据库中删除该表并重建它。如果只是添加注释,您可以重命名表,创建新表,然后从原始表导入数据。
来源:学说文档
Symfony 6,现在我就这样尝试了。
#[ORM\Column(length: 55, nullable: true, options:["comment"=>"在此处添加您的列注释"])]