Ответы пользователя по тегу Doctrine ORM
  • Как правильно преобразовать данные из сущности используя данные из другой сущности?

    keltanas
    @keltanas
    Software Developer
    Информация о курсах должна храниться в таблице Currencies, а не Config.
    Рядом с полем Price так же должна быть указана валюта, в которой записан Price (таким образом ты сможешь назначать цену в любой валюте).
    Дальше открываем библиотеку https://github.com/mathiasverraes/money и курим, как ее использовать, и как с ее помощью конвертировать любые валюты между собой.
    Ответ написан
    Комментировать
  • Как правильно организовать связь многие ко многим в Symfony2 Doctrine2?

    keltanas
    @keltanas
    Software Developer
    Вам не надо ManyToMany между User и Follower, т.к. Follower - это и так юзер. Т.е. нужна связь ManyToMany между Users и Users :) Это же вы и сделали в примере с 2 таблицами. Но, такой вариант будет не очень-то гибок.

    Лучше будет сделать отдельную сущность Followship в которой установить 2 связи к User типа OneToMany. Но, только в том случае, если для Followship надо хранить еще какие-то св-ва, например createdAt.

    Собственно, пример, который вы нашли вполне справедлив и готов к использованию.

    Чтобы получить, кто подписан на пользователя, обратитесь к св-ву $friendsWithMe.
    Чтобы получить, на кого подписан пользователь, см. $myFriends.

    Какую в вашем примере несет информацию идентификатор подписанности?

    что значит при каждом запросе пользователя, он будет тянуть и его подписчиков и тех на кого он подписан

    Что значит "тянуть"? Почему вы так решили? Зависит, как вы жадность для связи установите.
    Ответ написан
    1 комментарий
  • Как превратить двумерный массив (результат fetchAll из Doctrina) в строку?

    keltanas
    @keltanas
    Software Developer
    Приведение выборки из базы в вид строки - это уже задача представления. Так что передайте массив в шаблон, который создаст строку нужного формата.
    Просить слой работы с ДБ выполнять задачи представления - это абсурд.
    Ответ написан
    Комментировать
  • Почему Doctrine ORM генерирует Entities в одних случаях Unidirectional, а в других Bidirectional?

    keltanas
    @keltanas
    Software Developer
    Генерация сущностей носит рекомендательный характер, чтобы облегчить программисту рутинную работу.
    После генерации вы должны самостоятельно исправить конфигурацию сущностей, включая все связи, в соответсвии со своими требованиями.
    Надеюсь, вы знаете, чем отличается doctrine от, например, ar в yii?
    Doctrine работает от схемы, описанной в конфиге сущностей, а не от схемы БД. Наоборот, схема БД генерируется на основе конфига сущностей.
    Ответ написан
    Комментировать