Cайт веб-разработчика, программиста Ruby on Rails ESV Corp. Екатеринбург, Москва, Санкт-Петербург, Новосибирск, Первоуральск

Админка на Ruby on Rails

Rails 4.1.0: Spring, Variants, Enums, Mailer previews, secrets.yml

Rails 4.1.0 могли бы быть минорным обновлением в ветке 4.0.x, но количество дополнений и улучшений получилось гораздо больше, чем для минорной версии. Это просто означает, что модернизация приложений 4.0.x должна быть относительно простым делом, поскольку большинство изменений - дополнения или улучшения, без особых несовместимостей с предыдущими версиями.

Spring - наш новый предварительный загрузчик приложения. Это делает рабочие тесты, rake и генераторы намного быстрее на больших приложениях. Вы могли думать об этом как о режиме CGI командной строки. Каждый раз, когда Вы выполняли rake, все Ваше приложение загружалось с нуля. С Spring Ваше приложение - постоянный процесс, который может быть снова использован для выполнения команд, поэтому только первая загрузка медленная. Автоматически обнаруживается изменения кода и просто перезагружаются те части. Это имеет большое значение!

Variants (варианты) позволяют Вам иметь различные шаблоны и ответы действия для того же mime type (скажем, HTML). Это чудодейственное средство для любого приложения Rails, которое предназначено для мобильных клиентов. Вы можете теперь иметь отдельные шаблоны для рабочего стола, планшета и телефона при совместном использовании одинаковой логики контроллера. Это - "секретный соус" (secret sauce) "за кулисами"  Basecamp's гибридной стратегии native/HTML для мобильных приложений: одно и то же приложение Rails предназначенно для настольных браузеров, мобильных браузеров, мобильных приложений. Преимущества повторного использования огромные и значительное повышение производительности.

Enums (перечисления) "обертывают" поле состояния, имеющее значение из нескольких возможных опций. Этого достаточно, чтобы сделать tinyint-поля состояния быть более удобными для использования, при этом быть оптимизированы, а не хранить состояние в виде строки.

Mailer previews (предварительные просмотры почты) позволяют выполнить итерации визуализации ваших представлений (шаблонов) Action Mailer с данными тестирования, таким образом, Вы можете получить тот же поток операций, какой Вы имеете для любого другого представления в Вашем приложении. Внесите изменение, перезагрузите, чтобы увидеть результат.

Наконец, мы закрепили изменения для паролей (в production) с двумя изменениями. Первым изменением является secrets.yml, который дает Вам одно место хранения и один удобный интерфейс, чтобы получить доступ к secrets, которые были установлены или через ENV переменные, или через сценарии. По умолчанию это используется для secret token, охраняющего целостность cookie, но Вы можете использовать его для своих нужд в своем приложении. Второе это то, что мы добавили поддержку базы данных URL в database.yml, и что мы по умолчанию будем обращаться к ENV-backed URL в сгенерированных файлах. Ура безопасность!

Rails 4.1.0: Spring, Variants, Enums, Mailer previews, secrets.yml

Ruby on Rails 4.1 Release Notes