29 lines
3.4 KiB
Markdown
29 lines
3.4 KiB
Markdown
# Шаблон приложения Rails 7.1
|
|
|
|
## Запуск приложения
|
|
|
|
`/bin/dev` - это запускает сервер rails и наблюдение за изменением sass для автоматической генерации css
|
|
|
|
Если необходимо изменить стандартные параметры запуска rails сервера, необходимо отредактировать `Procfile.dev`
|
|
|
|
## Кастомизация
|
|
|
|
Файл `config/initializers/customize_error.rb` содержит код, который к каждому input в приложении при наличии ошибки добавляет текст соответсвующей ошибки, при необходимости его можно удалить либо изменить стилизацию
|
|
|
|
## Используемые библиотеки
|
|
|
|
- **slim-rails** - html процессор с более коротким синтаксисом
|
|
- **jquery** + **jquery-ui** для использования готовых jquery элементов
|
|
- **inputmask-rails** - библиотека для создания масок в полях ввода [Inputmask](https://robinherbots.github.io/Inputmask/#/documentation)
|
|
- **airbrake** - гем для отправки увдомлений об ошибках через errbit (настройка в файле `config/initializers/errrbit.rb`)
|
|
- **paper_trail** - гем для записи истории изменений объектов в программе (включен глобально для любой модели в файле `application_record.rb`)
|
|
- **strip_attributes** автоматически удаляет начальные и конечные пробелы в атрибутах модели (включен глобально для любой модели в файле `application_record.rb`)
|
|
- **toastr-rails** - всплывающие уведомления (изпользование в js: toastr\[TYPE\](text))
|
|
- **inline_svg** - подстановка svg inline как html-тэга (в svg можно проставить цвет currentColor и тогда вместо него будет использоваться вычисленный css атрибут color)
|
|
- **pagy** - более новая пагинация, чем каминари, работает с turbo автоматически
|
|
- **slimselect** - библиотека для реализации селектов (в т.ч. с поиском) [SlimSelect 2.0](https://slimselectjs.com/)
|
|
- **bootstrap-icons** - иконки bottstrap [Все иконки](https://icons.getbootstrap.com/)
|
|
- **hotwire-livereload** - автоматическое обновление страницы приложения при изменении html/css/js
|
|
- **hotwire turbo** - включено по умолчанию вместо turbolinks для быстрой загрузки страниц, есть большое кол-во дополнительных возможностей для обновления контента страниц без написания js-кода
|
|
- **hotwire stimulus** - позволяет создавать контроллеры, которые автоматически "приклеиваются" к элементу после его добавления на страницу, в т.ч. динамического
|