doctrine - Doctrine 2.1 @Column 注释中 "options"的语法是什么?

标签 doctrine doctrine-orm

我正在尝试在 Doctrine 2.1 中定义一个列(使用注释),该列映射到 MySQL 中的固定长度 CHAR 列。使用fixed=true 并不能完成这项工作。注释

* @ORM\Column(type="string", length=49, fixed=true, nullable=false)

它会导致错误:“在属性 [name here] 上声明的注释 @ORM\Column 没有名为“fixed”的属性。可用属性:名称、类型、长度、精度、小数位数、唯一、可为空,选项,列定义”。所以我假设“固定”位需要在“选项”中传递。但如何呢?我查阅了 Doctrine 2.1 文档,但找不到任何相关内容。

我试过了

* @ORM\Column(type="string", length=49, options="fixed=true", nullable=false)

这不会导致错误,但会被忽略——创建的列是 VARCHAR (49)。

我不想使用columnDefinition。

有什么建议吗?

谢谢

最佳答案

正确的语法是这样的:

@ORM\Column(type="string", length=49, options={"fixed":true}, nullable=false)

关于doctrine - Doctrine 2.1 @Column 注释中 "options"的语法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7903404/

相关文章:

php - Doctrine 的 addColumn() 迁移方法有哪些选项?

mysql - Doctrine :构建模式忽略表列

hibernate - 在实体内创建实体: how to persist

mysql - Symfony4 - 计数查询的 Doctrine 分页性能低(634484 条记录)

mysql - 尝试 MongoDB 或坚持使用 MySQL

mongodb - Silex 和 MongoDB,其中 Silex Extension

php - Symfony Doctrine UniqueConstraint错误常量表达式包含无效操作

php - Doctrine2.2(sqlite 使用内存)使用 OrmTestCase 和 phpUnit TroubleShoot

symfony - 如何在 DataFixture 类中执行学说查询?

caching - 如何在 symfony2 存储库中指定查询结果缓存?