Если я добавлю индексную подпись то потеряю "строгое" описание возможных полей. Ваш вариант я хотел использовать в крайнем случае, если не получится сделать "правильно".
Да, забыл написать где проблема возникает. Метод addEntity класса Main. В это методе я пытаюсь все компоненты распределить по их "категориям", т.е. у меня есть поле components у класса Main, которое должно содержать все компоненты у всех сущностей.
То, что написано в той теме не описывает разницы между подходами. Что касается конфигураций, как я и писал там нельзя делать запросы. Только как вариант при сохранении настроек записывать в папку config файл.
Ничего нового не придумал. Пожалуй, оставлю все так, как есть. В принципе, Вы описали все тоже самое, что и я, только я не стал описывать таблицу категорий, хотя у меня он связана с таблицей доп.полей.
Потому, что сам практический ответил на свой вопрос. Пока составлял вопрос, параллельно искал ответ в интернете, ничего интересного не нашел и решил, что этот единственно верный вариант для меня, либо это настолько простая проблема, что никто не интересуется решением, либо же это слишком частная проблема.
С 4.5 до 5.0. У нас тоже пытаются ввести, но немного другой журнал: "Барс.Web-образование". А пока используем netschool и нужно сделать так, чтобы все работало.