Я думаю, это зависит от типа администрации.
Если ваши администраторы будут смотреть на сайт так же, как обычный пользователь, но с дополнительными привилегиями, я бы выбрал флаг администратора. (Или, когда ваши потребности расширяются, полноценная таблица ролей.) Это ситуация, когда все видят одно и то же, но администраторы имеют доступ к различным действиям (удаление, редактирование, запрет и т. Д.), Которых нет у обычных пользователей.
Если представление, в котором нуждаются ваши администраторы, сильно отличается от обычного сайта, я бы порекомендовал совершенно отдельное приложение Rails, которое обращается к той же базе данных. Например, если ваши «администраторы» действительно являются сотрудниками службы поддержки, которые собираются отвечать на телефонные звонки или заниматься вопросами выставления счетов, они могут иметь совершенно разные представления о базе данных (и, возможно, способы редактирования данных), которые недоступны в регулярное применение.
Недостатком наличия нескольких сайтов является то, что модели (проверки, ассоциации и т. Д.) Могут быть не синхронизированы. Недостаток наличия одного сайта состоит в том, что вы можете в конечном итоге вставить все виды уродливого кода «if-admin» в ранее простые для понимания части вашего сайта. Какую проблему легче решить, зависит от ваших требований.