Size: a a a

2022 January 21

IM

Ilya Medzhidov 🖋 in symfony
Попробовал

—>createQueryBuilder('first')
—>leftJoin(
       \App\Second::class,
       'second',
       \Doctrine\ORM\Query\Expr\Join::WITH,
       'first = second.first'
   )

Но возвращается просто самый первый First в базе, у которого связи с Second нет
источник

S

Sergey in symfony
Все верно, потому что left join
источник

IM

Ilya Medzhidov 🖋 in symfony
да, через join заработало в итоге)
источник

IM

Ilya Medzhidov 🖋 in symfony
Не знал просто что в join (и leftJoin) можно указать отдельный класс, которые не привяза к текущему объекту, как в примере выше, пытался сделать через join('second.first'...)
источник

IM

Ilya Medzhidov 🖋 in symfony
Спасиб всем)
источник

K

Kirill in symfony
Всем привет! Подскажите, как в доктрине  добавить индекс GIN с опцией to_tsvector?
В энтити добавляю аннотацию вот такую
*.    ORM\Index(
*         name="idx_text_english_gin",
*         columns={"text"},
*     ),
Она генерирует вот такую миграцию
$this->addSql('CREATE INDEX idx_text_english_gin ON news (text)');

А мне нужно, чтобы получилась вот такая миграция
$this->addSql('CREATE INDEX idx_text_english_gin ON news USING GIN (to_tsvector(\'english\', text))');

Можно ли этого добиться через аннотации? Не нашел в документации
источник

АС

Александр Семикашев... in symfony
Не знаю, акутально ли на данный момент, но в своё время это решило мою проблему https://github.com/doctrine/orm/issues/6744
источник

K

Kirill in symfony
спасибо, посмотрю
источник

IM

Ilya Medzhidov 🖋 in symfony
Привет, подскажите, можно как-то получить все существующие сущности в проекте?
источник

Ш

Шурик in symfony
$em->getConfiguration()->getMetadataDriverImpl()->getAllClassNames();


так?
источник

Ш

Шурик in symfony
$manager->getMetadataFactory()->getAllMetadata()


или так
источник

IM

Ilya Medzhidov 🖋 in symfony
Что-то очень похоже на правду, сейчас попробуем)
источник

Ш

Шурик in symfony
но зачем?)
источник

AE

Alex Ep in symfony
если просто вывести, то вот так

php bin/console doctrine:mapping:info --em=default

--em - подставить нужный коннект, если их больше одного
источник

IM

Ilya Medzhidov 🖋 in symfony
Оно, сработало)

Оу, это очень страшный вопрос... У нас есть файлы в проекте, которые подключаются к разным сущностям. И в какой-то момент я понял, что этим файлам надо бы прописать юзеров, которым они принадлежат. А сделать это ой как не просто, когда сущностей пару десятков, у каждого свои поля с разными названиями и просчитывается путь до пользователя от них тоже по-разному)
источник

IM

Ilya Medzhidov 🖋 in symfony
Я ручками выбрал эти сущности и прописал поля, но что-то не досчитываюсь львиной доли файлов
источник

IM

Ilya Medzhidov 🖋 in symfony
Хочу попробовать автоматически это провернуть, может какую сущность пропустил)
источник

IM

Ilya Medzhidov 🖋 in symfony
Пример выше выдает список сразу в коде, там где с ним можно работать и без лишних символов, но этот вариант тоже рабочий)
источник

IM

Ilya Medzhidov 🖋 in symfony
Спасибо всем)
источник

Ш

Шурик in symfony
ты делаешь что-то очень странное)
источник