myks92
@myks92
Нашёл решение — пометь вопрос ответом!

Yii2 Как лучше сделать несколько профилей?

Всем доброго вечера! Планирую сделать несколько профилей и одну таблицу user. У профилей большая часть (70-80%) полей одинаковые: фамилия, имя, отчество и так далее ... Кол-во профилей планируется: 2-4 штуки. Дополнительные поля к каждому профилю пока что: 4-7 штук. Скажите своё мнение как лучше делать разработку:

  1. Сделать всё в разных контроллерах и разных таблицах
  2. Сделать одну таблицу со всеми возможными полями и одним контроллером
  3. В таблице pfofile оставить пересекающиеся данные, а остальные данные вывести в отдельные таблицы. Далее в контроллере в зависимости от роли подгружаем нужные модели и представления через условия if{... }esle{...}
  4. Вынести в разные таблицы, но в одном контроллере. Далее в контроллере в зависимости от роли подгружаем нужные модели и представления через условия if{... }esle{...}
  • Вопрос задан
  • 170 просмотров
Решения вопроса 1
myks92
@myks92 Автор вопроса, куратор тега Yii
Нашёл решение — пометь вопрос ответом!
Один из вариантов решения: https://habrahabr.ru/post/274925/
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
У Вас несколько проблем, а Вы ищите 1 решение. При чем тут контролеры? Это какая-то отдельная проблема, которую Вы вообще не сформулировали.
Очевидно, что речь идет о хранении сущностей и тут вопрос не только: в одной ли таблице или в разных, тут еще есть вариант хранить различающиеся данные в json и тогда таблица одна (отлично подойдет для произвольных данных по которым не происходит выборка). А наверняка есть еще варианты, например отдельная модель на каждый профиль со своими методами и атрибутами.
Вопрос не решаемый, пока Вы не поймете как это будет использоваться. Так как расписав необходимые методы работы с данными, Вы сможете понять какой из методов оптимален под данный проект.
Любое хорошее решение - это логический вывод при рассмотрении всех исходных данных. А Вы не предоставили их и видимо сами для себя еще не сформулировали.
Ответ написан
Ваш ответ на вопрос

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

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