dhtmlxScheduler с Ruby on Rails
В этой статье показано, как настроить Scheduler и интегрировать его на серверной стороне с использованием фреймворка Ruby on Rails совместно с REST API.
Если вы работаете с другой технологией, вы можете найти другие варианты интеграции ниже:
- dhtmlxScheduler с ASP.NET Core
- dhtmlxScheduler с ASP.NET MVC
- dhtmlxScheduler с Node.js
- dhtmlxScheduler с PHP
- dhtmlxScheduler с PHP: Slim
- dhtmlxScheduler с PHP:Laravel
- dhtmlxScheduler с SalesForce LWC
- dhtmlxScheduler с dhtmlxConnector
Если Ruby on Rails уже установлен на вашем компьютере, вы можете сразу приступить к интеграции. В противном случае необходимо установить фреймворк, следуя инструкциям из руководства по установке.
После завершения установки можно переходить к интеграции шаг за шагом.
Шаг 1. Создание проекта
Чтобы создать новый проект, выполните следующую команду в терминале:
rails new path/to/your/project
Шаг 2. Создание контроллера
Далее добавьте контроллер для обработки пользовательских запросов к серверу через приложение. Поскольку запросы бывают разных типов, лучше создавать отдельные контроллеры для разных типов запросов.
Маршрутизация (routing) используется для связи контроллеров с типами запросов. Разные маршруты соответствуют разным действиям, и эти действия собирают информацию, передаваемую в представление.
Создайте новый контроллер с именем "home" и действием "index", выполнив:
cd path/to/your/project
rails generate controller home index
В результате выполнения команды появится подтверждение о создании новых файлов.
Шаг 3. Указание маршрутизации
Для настройки маршрутизации откройте config/routes.rb. Найдите строку вверху файла:
get 'home/index'
и замените её на:
root :to => 'home#index'
get "data", :to=>"event#get", :as=>"data"
post "data(/:id)", :to => "event#add"
put "data/:id", :to => "event#update"
delete "data/:id", :to => "event#delete"
После этого вы можете проверить работу сервера, выполнив:
rails server
Затем откройте http://localhost:3000/ в браузере. Вы должны увидеть страницу, похожую на эту:

Теперь сервер готов, и можно переходить к добавлению представлений.
Шаг 4. Подключение исходных файлов
Сначала скачайте пакет dhtmlxScheduler здесь.
Выполните следующие действия:
- Распакуйте codebase/dhtmlxscheduler.js и папки codebase/ext и codebase/locale из архива в vendor/assets/javascripts/ в каталоге вашего проекта.
Структура файлов будет выглядеть примерно так:

- Распакуйте следующие файлы стилей:
- codebase/dhtmlxscheduler.css
- codebase/dhtmlxscheduler_classic.css
- codebase/dhtmlxscheduler_flat.css
- codebase/dhtmlxscheduler_glossy.css
в vendor/assets/stylesheets/.
В результате получится следующее:

- Внутри каталога "public" создайте папку "assets" и распакуйте в неё следующие папки:
- codebase/imgs
- codebase/imgs_dhx_terrace
- codebase/imgs_flat
- codebase/imgs_glossy
Структура будет выглядеть так:

- Откройте config/initializers/assets.rb и добавьте dhtmlxscheduler.js и dhtmlxscheduler.css в список препроцессинга, добавив строки:
Rails.application.config.assets.precompile += %w( dhtmlxscheduler.css )
Rails.application.config.assets.precompile += %w( dhtmlxscheduler.js )