Задать вопрос
Slavenin999
@Slavenin999
программист php/erlang/elixir/js

Что такое столбец дискриминатора в doctrine?

Всем привет!
Пытаюсь сделать расширение orm. Но при вставке доктрина упорно пытается добавить в базу столбец дискриминатора. Может кто-нибудь объяснить на кой он вообще нужен? И как его правильно описать?

AppBundle\Entity\BuildingObjectSuper:
    type: mappedSuperclass
    table: object
    fields:
        titleObject:
            type: text
            nullable: false
            length: 16777215
            options:
                fixed: false
            column: title_object

KRBundle\Entity\BuildingObject:
    type: entity
    inheritanceType: SINGLE_TABLE
    discriminatorColumn:
        name: titleObject
        type: string
    table: object
    repositoryClass: KRBundle\Repository\BuildingObjectRepository
    fields:
        other:
            type: integer
            nullable: true


в бд упорно пытается вставиться значение из discriminatorColumn. И возникает либо
Column not found: 1054 Unknown column 'titleObject' in 'field list'

либо
Duplicate definition of column 'column_name' on entity 'KRBundle\Entity\BuildingObject' in a field or discriminator column mapping.
если указать существующее поле
  • Вопрос задан
  • 2674 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
Minifets
@Minifets
Hello world!!!
Если ты делаешь просто MappedSuperclass - то тебе не нужен DiscriminatorColumn, он нужен для других целей
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
BoShurik
@BoShurik Куратор тега Symfony
Symfony developer
docs.doctrine-project.org/projects/doctrine-orm/en...
DiscriminatorColumn добавляется автоматически, его не надо описывать в сущности
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы