【问题标题】:How to configure Doctrine to use yaml mapping on Symfony 4如何在 Symfony 4 上配置 Doctrine 以使用 yaml 映射
【发布时间】:2018-06-03 20:48:22
【问题描述】:

我是 Symfony 的新手4

我使用 Doctrine 我想使用 yaml 实体映射。 所以我配置了文件doctrine.yaml并将type:annotation更改为type:yml

当我尝试php bin/console make:entity时,没有生成链接到该实体的yaml映射文件

这是我的doctrine.yaml 文件:

参数: # 如果未设置 env var,则添加后备 DATABASE_URL。 # 这允许你运行 cache:warmup 即使你的 # 环境变量尚不可用。 # 你不需要改变这个值。 环境(DATABASE_URL):'' 教义: 分贝: # 为您的数据库服务器配置这些 驱动程序:'pdo_mysql' 服务器版本:'5.7' 字符集:utf8mb4 # 在 Symfony 3.3 中,移除 `resolve:` 前缀 url: '%env(resolve:DATABASE_URL)%' 形式: auto_generate_proxy_classes: '%kernel.debug%' 命名策略:教义.orm.naming_strategy.underscore 自动映射:真 映射: 应用程序: is_bundle: 假 类型:yml 目录:'%kernel.project_dir%/src/Entity' 前缀:'应用\实体' 别名:应用

【问题讨论】:

标签: symfony doctrine-orm mapping yaml symfony4


【解决方案1】:

根据您的需要进行映射的示例:

更改包含“orm”文本doctrine.orm.yaml 的文件名,并查看以下示例中的dir 选项(符合您的需要 ):

App:
    is_bundle: false
    type: yml
    # "dir" in this case must be pointed where are stored your doctrine files (can be anywhere inside the project dir)
    dir: "%kernel.project_dir%/config/doctrine"
    prefix: App\Entity

参考:Doctrine yaml mapping (v2.6 current)

【讨论】:

  • @redigaffi 链接已更新为当前版本,感谢您通知我。
  • 我在带有注释的 symfony 5.1 中遇到了同样的问题,不幸的是我找不到您的解决方案....
  • @Alex open a question on SO 但请记住 yaml 驱动程序已被弃用并从 3.0 版中删除,因此强烈建议使用其他映射驱动程序,如 xml
  • 是的,我昨天提出了我的问题:stackoverflow.com/questions/63367323/… yaml 已弃用?我所有的 symfony 5.1 web 框架都默认配置了 yaml!我应该改变它吗?
  • @Alex yes 在 Doctrine 中被弃用为映射驱动程序(阅读我的答案中的参考链接)。
猜你喜欢
  • 2019-03-28
  • 2016-03-10
  • 1970-01-01
  • 2015-07-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多