Задать вопрос
  • Chromium блокировка расширений, как обойти?

    @tukreb
    VVVVVV dad, зачем использовать заведомо плохой браузер? Вы бы ещё спросили, как заставить работать приложение после установки вируса.
  • Как отключить наследование в Doctrine?

    @tukreb Автор вопроса
    Flying, вы будете смеяться, но проблема оказалась в название свойства в классе Parent
    protected $id;
    переименовал в
    protected $id_parent;

    И всё запустилось.

    Забавно... До этого у меня не было проблем, чтобы из-за несовпадений названий свойства класса с полями таблицы.
  • Как отключить наследование в Doctrine?

    @tukreb Автор вопроса
    Flying, у меня есть подозрения, что Doctrine теряет Id для класса Children.
    Похожий случай был, без наследования, поэтому я использовал так сказать мини хак и в классе Children
    указывал напрямую свойство id и потом в конструкторе присваивал значение.
    Но теперь, при наследование, я не могу сделать такой трюк, т.к доктрина ругается на дубликат этого свойства в классе Parent.
  • Как отключить наследование в Doctrine?

    @tukreb Автор вопроса
    Flying, SomeClassForChilder со связью 1:1 имеет такую связь, потому что, есть ещё SomeClassForChilder2 со связью 1:1, которая в данном примере не используется, поэтому опушена..

    Mapping у меня синхронизирован с базой данной.
    [OK] The database schema is in sync with the mapping files.


    В dev.log тоже самое, что и в debug панели Symfony.
    Транзакция отклоняется при добавлении в базу таблицы Parent, где все поля заполнены правильно, то есть если вручную скормить этот SQL код в бд, то ошибки не будет. Видимо в лог не успевает записаться следующий sql запрос, который должен быть от класса Children
  • Как отключить наследование в Doctrine?

    @tukreb Автор вопроса
    Flying, хорошо, если вы сможете помочь разобраться, буду очень рад, я отредактировал и добавил упрощённый вариант моего кода.

    Но в данном случае, обойти доктрину будет мне более предпочтительно:)
  • Как отключить наследование в Doctrine?

    @tukreb Автор вопроса
    Максим Федоров,
    Если я отнаследуюсь допустим от класса А, которая так же является таблицей А, то доктрина будет ругаться, что в таблицу Б, нет полей из таблицы А.
    Конечно, есть вариант использовать @ORM\InheritanceType("JOINED"), но тут мне выбрасывает ошибку, которую я не могу отследить :)
    SQLSTATE[HY093]: Invalid parameter number: parameter was not defined

    П.С, что значит это ошибка я знаю :)
  • Как получить все последние комментарии для всех пользователей?

    @tukreb
    Как это джойны не доступны, если у вас есть столбец user_id указывающий на связь с таблицей users?
  • Как разделить БД на модули?

    @tukreb Автор вопроса
    Андрей Скоржинский, ну меня думаю устроят любые примеры на данную тему. Я не могу нормально сформировать вопрос, чтобы гугл выдал мне что-то интересное на данную тему :)
  • Как разделить БД на модули?

    @tukreb Автор вопроса
    Андрей Скоржинский, хм, а где можно посмотреть примеры разделения БД, когда её лучше делать и вообще примеры по этой теме?
    Спасибо.
  • Как разделить БД на модули?

    @tukreb Автор вопроса
    Андрей Скоржинский, да, это не проблема, главный вопрос, как лучше разделить базу. Мой предложенный вариант жизнеспособен или я наткнусь на непредвиденные подводные камни? И есть ли варианты по лучше, как разделить БД?
    Может есть интересные примеры на просторах интернета? У меня не получалось сходу найти что-то хорошее на эту тему.
  • Как разделить БД на модули?

    @tukreb Автор вопроса
    Андрей Скоржинский, не нужно его воспринимать буквально, а имел ввиду что-то по аналогии мода. То есть, не обязательный элемент как мод (микросервис?), который можно подключить и отключить/удалить безболезненно как для БД так и для сайта. Да возможно это немного нарушит нормализацию, если рассматривать всё как одно целое, потому что я в данный момент не вижу как это сделать иначе. И в общем поэтому и задал тут вопрос, какие варианты тут есть.
  • Как разделить БД на модули?

    @tukreb Автор вопроса
    Можете ткнуть пальцем?
    Вам не нравится нарисованная ER модель? Вы что-то не понимаете в ней?
  • Насколько дорогая SQL операция NOT IN/NOT EXISTS?

    @tukreb Автор вопроса
    Хм, об таком варианте я даже не подумал :) Спасибо.
    А что вы скажите на счёт дороговизны NOT IN/NOT EXISTS?
  • Как лучше спроектировать Р-модель БД в данной ситуации?

    @tukreb Автор вопроса
    Андрей Скоржинский, точно, спасибо, я совсем запутался:)
    Я попробую поэкспериментировать с этим.
  • Как лучше спроектировать Р-модель БД в данной ситуации?

    @tukreb Автор вопроса
    Не понял эту фразу. Под "свои поля" что имеется в виду в применении к предметной области?

    В данном случае если вся бизнес логика на стороне сервера (не на БД), то вопрос можно снять.

    С чем сравниваем? С выполнением sql-запросов? С linq?

    Допусти на складе, есть сотни таких элементов:
    ID | type | model_id | serial_num | status
    1 | RAM | 1    |  kmgle43t | ok
    2 | RAM | 1    |  kmfge65t | ok
    3 | RAM | 4    |  kmferg5t | ok
    4 | CPU | 1    |  km3fdrft | ok
    5 | CPU | 1    |  k434fdrft | ok
    и т.д

    Если я захочу вывести для каждого компонента всю их информацию, например: Модель, размер, интерфейсы, и другие специфические для компонентов данные.
    То мне для каждого поля нужно нужно будет делать джоин. Если у типа компонента RAM - 6 атрибутов, чтобы собрать из нужно будет сделать 6 джоинов.
    Допустим на складе надо отобразить 100 компонентов RAM с их данными - это будет как минимум 600 джоинов.

    Вот на сколько скажется на производительности?
  • Как лучше спроектировать Р-модель БД в данной ситуации?

    @tukreb Автор вопроса
    Но для этого придётся жёстко писать логику на стороне сервера?
    То есть запретить создавать пользователю свои поля и предоставлять только заранее заготовленные и на основе этого строить запросы.

    И на сколько это быстрее будет? Ведь придётся делать как минимум 4-5 джойнов для одного компонента. Хотя с другой стороны не придётся плодить под каждый компонент свою сущность. Выглядит интересно.