我的情况的一个小草图。我有一个名为“票证”的实体,票证上有一个名为“州”的字段。可能的状态是:“打开”和“关闭”。我想将这些状态存储在MySQL枚举中。
Doctrine不支持ENUM开箱即用,所以我补充道:
doctrine:
dbal:
mapping_types
enum: string
到目前为止一切顺利。
现在在我的学说YAML文件(Ticket.orm.yml)中,我添加了以下内容:
fields:
state:
type: string
columnDefinition: ENUM('Open', 'Closed')
我遇到的问题是我跑的时候
app/console doctrine:schema:update --force
它是否将该字段存储为VARCHAR,我尝试将其手动添加到我的MySQL数据库中,但它再次使用VARCHAR覆盖它。当我将状态类型编辑为ENUM时,它告诉我:
请求未知列类型“枚举”。
我使用Symfony 2.1版
我跟着并尝试了以下解决方案: