Многопользовательская CRM, или как организовать?

Здравствуйте уважаемые гуру!
Суть вопроса, есть CRM для одной фирмы, стабильно работает на PHP-шном фрэймворке (MVC), обычные запросы SQL, без memcached, скрипты JQUERY.
Вообщем всё работает стабильно, появилась задача, сделать это для многих компаний, для каждой создавать свой отдельный сайт и базу не вариант, надо из одного.
Смотря на имеющуюся базу понимаю что одной таблицы , мало, для каждой новой компании создавать свои таблицы и по номеру главного пользователя выбирать её? Но это приведёт к огромному числу таблиц.

Куда смотреть в плане PHP фрэймворка и JS ,
Вообщем с удовольствием пообщаюсь на эту тему и почитаю предложенные материалы .
  • Вопрос задан
  • 514 просмотров
Пригласить эксперта
Ответы на вопрос 3
@four4
Если она изначально не multi-tenancy, то никак.
Если бы была спроектирована под mutli-tenancy - просто в каждой таблице дополнительное поле и фильтровать ВСЕГДА по нему, чтобы не видеть чужих данных. Но чтобы сейчас, на готовой уже системе, так сделать - это глубоко лопатить код с риском, что увидят чужие данные, если вы ошибетесь.
Ответ написан
А почему одной таблицы мало?.. Измените структуру - в одной таблице храните аккаунты, во второй - записи, которые эти аккаунты будут вносить (по аналоги ис уже имеющейся таблицей). В таблицы с данными просто будете заносить id пользователя, и все.
Записей, конечно, будет много, поэтому придется уделить вопрос оптимизации (как минимум определить самые частые выборки).
Ответ написан
Комментировать
Если не хочется плодить таблицы, можно сделать одну таблицу, в которую вы будете добавлять компании, которые подключаются к вашей CRM и идентификатор из этой таблицы использовать как ключ во всех таблицах, где требуется разделение данных по компаниям.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
26 апр. 2024, в 07:20
2000 руб./за проект
26 апр. 2024, в 06:46
1000 руб./в час
26 апр. 2024, в 05:31
1000 руб./за проект