Каждый программист рано или поздно сталкивается с проблемой N+1 запросов в Ruby on Rails. В этой статье будет показан как стандартный способ борьбы с проблемой, так и менее распространённые решения. Читайте дальше, если хотите узнать, как сократить количество каскадных N+1 SQL-запросов без использования включений дополнительных таблиц или JOIN операций (статья пересказывает - https://pawelurbanek.com/rails-n-1-queries). Каскадно растущие запросы - это главный убийца производительности в Rails-приложениях...
Статьи о Ruby On Rails
Битва за аудит и управление версиями - Audited или Paper Trail?
Оригинал статьи: João Rosa В наши дни растёт потребность в механизмах контроля за действиями в системах. Rails предоставляет нам множество полезных инструментов, с помощью которых мы создаём отличные решения, но по умолчанию он не предлагает нам подходящих инструментов отслеживания. В большинстве случаев мы знаем только дату последнего изменения и ее создания, из атрибутов updated_at и created_at соответственно. Нам следует помнить, что задача регистрации важных изменений, внесённых пользователем в систему, и при необходимости возврат к исходному состоянию, требует создание кода...
Webpacker — давайте, заменим Sprockets!
Оригинал текста: Gernot Gradwohl Webpacker - это тонкая абстракция поверх webpack, который и сам по себе является широко используемым инструментом для объединения ресурсов. Хорошо настраиваемый и в связи с этим широко и многообразно используемый. Однако, именно из-за множества предлагаемых опций, за ним утвердилась слава неудобно настраиваемого интерфейса. Сообщество Rails разглядело множество присущих ему преимуществ, но потребовало упростить начало работы, для чего и была создана эта абстракция, которая, в свою очередь, была «объединена» с самим Rails...
Ruby on Rails + OmniAuth + Devise: настраиваем атрибуты пользователей
Когда я делал своё первое приложение Ruby on Rails, я знал наверняка: вместо того, чтобы писать строку за строкой кода для управления регистрацией пользователей, сеансами и аутентификацией, я хочу воспользоваться преимуществами замечательного Ruby gem под названием Devise. Для непосвященных поясню, что Devise позиционируется как «гибкое решение для аутентификации», но, на мой взгляд, это далеко не всё. Вы можете проверить, что он может здесь, но, проще говоря, Devise обрабатывает всё: от регистрации пользователей и сеансов, до забытых паролей и того, что между ними...
Как добавить Stimulus.js в Rails 6
Устанавливаем Stimulus с помощью Webpacker в Ruby On Rails Оригинал: Maria Schuessler Stimulus.js - это легкий JavaScript-фреймворк от создателей Rails. Stimulus используется для простой и ненавязчивой интеграции JavaScript в приложения Rails. Можно воспринимать его как лёгкую замену React или Vue поверх RoR. Поскольку данный фреймворк сразу создавался для MVC, он сочетает в себе простоту конвейера Rails с современными стандартами JavaScript - модульный и молниеносный. Stimulus создает собственный набор контроллеров, которые могут взаимодействовать с DOM во внешнем интерфейсе приложения...
