我对YAML
并不熟悉,所以我打开parameters.yml和config.yml文件以查看如何在YAML
中使用参数或变量的示例。如何在yaml中定义变量symfony2
parameters.yml:
parameters:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: 3306
database_name: homlist
config.yml:
doctrine:
dbal:
driver: "%database_driver%"
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
但是,当我与教义映射YAML文件中像这样试了一下:
parameters:
table_name: test
Mockizart\Bundle\BlogBundle\Entity\MockblogTag:
type: entity
table: "%table_name%"
这是这样的错误:在执行时发生
例外 'SELECT COUNT(DISTINCT%0_.id)AS sclr0 FROM%TABLE_NAME%%0_':
这是我的映射文件Resources\Config\Entity\MockblogTag
Mockizart\Bundle\BlogBundle\Entity\MockblogTag:
type: entity
table: mockblog_tag
indexes:
user_id:
columns:
- user_id
name:
columns:
- name
slug:
columns:
- slug
id:
id:
type: integer
nullable: false
unsigned: false
comment: ''
id: true
generator:
strategy: IDENTITY
fields:
dateCreated:
type: integer
nullable: false
unsigned: false
comment: ''
column: date_created
name:
type: string
nullable: false
length: 60
fixed: false
comment: ''
slug:
type: string
nullable: false
length: 100
fixed: false
comment: ''
totalPost:
type: integer
nullable: false
unsigned: false
comment: ''
column: total_post
manyToOne:
user:
targetEntity: ORD\UserBundle\Entity\User
joinColumn:
referencedColumnName: id
type: integer
nullable: false
unsigned: false
lifecycleCallbacks:
如何在yaml symfony2中定义变量?
正如CERAD说你不能这样做:
您是否尝试过在parameters.yml文件中定义表名? – 2014-11-23 14:19:16
@ A.L通过如何将'app/config/parameters.yml'导入到MyVendor/Bundle/BlogBundle/Entity/Tag.orm.yml中的实体中? – Kakashi 2014-11-23 15:26:12
似乎映射文件被Doctrine读取,并且Symfony2配置不能被Doctrine访问。我无法帮助你,对不起。有没有理由让表名称可配置? – 2014-11-23 15:36:28