【问题标题】:Doctrine.yaml" does not contain valid YAML: A colon cannot be used in an unquoted mapping valueDoctrine.yaml" 不包含有效的 YAML:冒号不能用于未引用的映射值
【发布时间】:2021-09-13 12:17:39
【问题描述】:

我看到有人提出类似的问题,但没有找到我的答案。 大多数是某种类型的错字,这对我来说可能是真的,但我已经盯着这个看了一个小时,找不到一个,也许其他人可以,我真的很感激!

  doctrine:
      dbal:
        default_connection: default
        connections:
            default:
                #User DB
                 url: '%env(resolve:DATABASE_URL)%'
                 driver: 'pdo_mysql'
                 server_version: '5.7'
                 charset: utf8mb4
            mededelingen:
                #mededelingen DB
                url: '%env(resolve:DATABASE_MEDEDELINGEN_URL)%'
                driver: 'pdo_mysql'
                server_version: '5.7'
                charset: utf8mb4
        # IMPORTANT: You MUST configure your server version,
        # either here or in the DATABASE_URL env var (see .env file)
        #server_version: '13'
    orm:
        auto_generate_proxy_classes: true
        naming_strategy: doctrine.orm.naming_strategy.underscore
        auto_mapping: true
             default:
                 connection: default
                     mappings:
                         users:
                             is_bundle: false
                             type: annotation
                             dir: '%kernel.project_dir%/src/Entity'
                             prefix: 'App\Entity\User'
                             alias: App
             mededelingen:
                 connection: mededelingen
                     mappings:
                         Mededelingen:
                             is_bundle: false
                             type: annotation
                             dir: '%kernel.project_dir%/src/Entity'
                             prefix: 'App\Entity\Mededeling'
                             alias: Mededeling

第 41 行(“别名:Medeling”附近)

【问题讨论】:

  • 以下哪一行会导致错误?
  • 对不起!完全忘记添加第 41 行(靠近“别名:Mededeling”)
  • 也就是说:如果你删除了最后一行,就不会出现错误?
  • 我试过了,但它只会在第 41 行(靠近“”)说出来
  • 您是否尝试删除 更多 行以查看该错误何时解决?

标签: symfony doctrine yaml


【解决方案1】:

我尝试使用我的 linter 解决您的问题。

首先,你在orm之后错过了entity_managers的属性,然后我不得不移动naming_strategyauto_mapping

auto_mapping 只能在一个实体管理器上使用,所以我将其设置为默认值。

对我来说没有问题的结果:

doctrine:
    dbal:
        default_connection: default
        connections:
            default:
                #User DB
                url: '%env(resolve:DATABASE_URL)%'
                driver: 'pdo_mysql'
                server_version: '5.7'
                charset: utf8mb4
            mededelingen:
                #mededelingen DB
                url: '%env(resolve:DATABASE_MEDEDELINGEN_URL)%'
                driver: 'pdo_mysql'
                server_version: '5.7'
                charset: utf8mb4
        # IMPORTANT: You MUST configure your server version,
        # either here or in the DATABASE_URL env var (see .env file)
        #server_version: '13'
    orm:
        entity_managers:
            auto_generate_proxy_classes: true
            default:
                connection: default
                naming_strategy: doctrine.orm.naming_strategy.underscore
                auto_mapping: true
                mappings:
                    users:
                        is_bundle: false
                        type: annotation
                        dir: '%kernel.project_dir%/src/Entity'
                        prefix: 'App\Entity\User'
                        alias: App
            mededelingen:
                connection: mededelingen
                naming_strategy: doctrine.orm.naming_strategy.underscore
                mappings:
                    Mededelingen:
                        is_bundle: false
                        type: annotation
                        dir: '%kernel.project_dir%/src/Entity'
                        prefix: 'App\Entity\Mededeling'
                        alias: Mededeling

【讨论】:

    猜你喜欢
    • 2018-09-15
    • 1970-01-01
    • 2023-03-23
    • 2019-12-09
    • 2015-10-26
    • 1970-01-01
    • 1970-01-01
    • 2020-11-16
    • 1970-01-01
    相关资源
    最近更新 更多