**Классификатор**
Все ниже ресурсы и возможности должны иметь версионный 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**) пользуясь ресурсами классификатора создает свой собственный проект (классифицируя свой объект).