**Классификатор** Все ниже ресурсы и возможности должны иметь версионный REST API 1.0.0 с документацией (CRUD) Должны быть покрыты тестами RSPEC желательно. Для представления вида Tree Views использовать индивидуальный show.html.erb для каждой модели. Админка (Active_admin/Rails_admin) главное было удобно редактировать ресурсами... Вот ссылка на пример - http://demo-classifier.herokuapp.com/admin/xclass (нажать на сортировку) login: d.abeuov9@gmail.com passw: Kazniisa@123 **Ресурсы(модель)** Таблицы для (**admin, editor, moderator**) - 1) xcategories 2) xclasses 3) properties 4) activities. 1)Категория(xcategories) has_many :xclasses 2)Классы(xclasses) belongs_to :xcategory has_many :properties has_many :activities 3)Свойства(propeties) belongs_to :xclass 4)Деятельность(activities) belongs_to :xclass #______________________________________________ Таблицы для (**guest, paid_user**) - 1) xcategories_user 2)xclasses_user 3)properties_user 4)activities_user. 1)Категория_пользователя(xcategories_user) has_many :xclasses_user 2)Классы_пользователя(xclasses_user) belongs_to :xcategory_user has_many :propeties_user has_many :activities_user 3)Свойства_пользователя(propeties_user) belongs_to :xclass_user 3)Техническое_обслуживание_пользователя(activities_user) belongs_to :xclass_user **Итого** Программа содержит 5 роли: admin, editor, moderator, gust, paid_user У каждого пользователя свои ресурсы и разные доступы. admin - имеет доступ ко всему (CRUD). editor - сотрудник компании, который наполняет древовидную структуру классификации(ISO) на моделях 1) xcategories 2) xclasses 3)properties 3)activities. moderator - пользователь, который может контролировать ресурсы editora (CRUD), '+' дает разрешение на публикацию. guest - Все пользователи по умолчанию гости и могут только смотреть tree views классификацию, но с ограниченным доступом к ресурсам properties, activities. Но гость может обновить статус по платной подписке пользователя(paid_user). paid_user - может смотреть все ресурсы. Дальше пользователь(**paid_user**) пользуясь ресурсами классификатора создает свой собственный проект (классифицируя свой объект).