Статьи

Rails Intro, Deep Dive: Установка Rails, часть первая

Продолжая мой последний пост о RVM , на этот раз мы установим Rails. Опять же, эта серия пытается дать вам более глубокое представление о том, как начать работу с Rails, поэтому мы рассмотрим некоторые из вариантов, доступных при первом создании вашего изменяющего мир приложения Rails, а также гемы, которые устанавливаются вместе с Rails.

Выбор переводчика

Прежде всего, убедитесь, что вы открыли терминал и переключились на наш интерпретатор Ruby RVM и набор гемов, то есть MRI 1.9.2 и rubysource , соответственно. Мы делаем это с

rvm 1.9.2@rubysource

и вы можете проверить с быстрой rvm info . Как вы, вероятно, знаете, способ создания нового приложения на Rails — ввести его в командной строке.

rails new applicationName

Установка Rails

Возможно, вы не знаете, где находится исполняемый файл Rails . На самом деле, вас может удивить то, что единственное, что включает в себя гем Rails, это исполняемый файл rails . Драгоценный камень Rails имеет много зависимостей, которые удовлетворяются другими драгоценными камнями, но фактический драгоценный камень Rails — просто исполняемый файл. Давайте установим это сейчас.
gem install rails --pre

наполнитель

--pre

Опция --pre указывает RubyGems установить последний доступный гем, который может не быть «официальной» стабильной версией Rails. В нашем случае мы получаем Rails 3.1 RC4. «RC4» означает «Кандидат на выпуск 4», который должен стать последним из кандидатов на выпуск до того, как Rails станет стабильным, что является еще одним способом сказать, что он выпущен. Мы можем увидеть общий цикл выпуска, который следует Rails, посмотрев на теги на Github

Релизы 3.1 Кандидаты в релизы

Здесь мы видим, что Rails следует схеме, начиная с «бета-версии», за которой следуют 4 или 5 кандидатов на выпуск, прежде чем она станет стабильной. Благодаря RVM мы можем испортить любое предварительное программное обеспечение, не загрязняя остальную среду разработки.

Теперь вы знаете, что делает опция «-pre» при установке гема Rails, но какие еще есть варианты? «Gem install» принимает много опций, которые мы можем увидеть здесь .

RubyGems

RubyGems позволяет нам указывать элементы, такие как конкретная версия (которую мы видели), место назначения установки, устанавливать или нет документацию, устанавливать или нет зависимости, а также указывать источник для поиска драгоценных камней. Просматривая доступные варианты, легко увидеть, как RVM использует RubyGems для изоляции наборов гемсетов. Наконец, вы можете поместить любой из этих параметров в ваш файл ~ / .gemrc, если вы снова и снова вводите одни и те же параметры. В качестве особого бонуса, вот способ значительно ускорить установку ваших драгоценных камней, установив параметры в файле конфигурации Gem.

Другие драгоценные камни установлены

Когда мы установили Rails, он также установил несколько других гемов. Что это за драгоценные камни? Какова их цель?

Драгоценные камни, установленные с помощью Rails

Давайте кратко рассмотрим каждый из них.

MultiJSON
MultiJSON (от Intridea, который делает отличные вещи) позволяет использовать несколько бэкэндов JSON, выявляя и используя лучший. В случае установки vanilla Rails используется гем json_pure .

ActiveSupport
ActiveSupport — это «коллекция различных служебных классов и расширений стандартной библиотеки, которые были сочтены полезными для Rails. Таким образом, все эти дополнения собраны в этом пакете как способ собрать весь сахар, который делает Ruby более сладким ». Это означает, что ActiveSupport является строительными блоками Rails, включая абстракции для кэширования, поддержку JSON, поддержку юникода и уведомления. Он также определяет ActiveSupport :: Railtie, который является одним из способов расширения вашего Rails-приложения. Широта ActiveSupport слишком велика, чтобы ее охватить, поэтому проверьте это в свободное время.

строитель
Builder предоставляет домен-специфический язык (DSL) для создания разметки.

i18n
Gem i18n предоставляет всю поддержку локализации для Rails. Как вы можете себе представить, это большая тема, и ее стоит изучать по мере роста ваших знаний в Rails.

BCrypt Ruby
BCrypt — новинка в Rails 3.1, обеспечивающая шифрование для защиты постоянных паролей.

ActiveModel
ActiveModel предоставляет интерфейс для моделей в Rails. ActiveModel была предоставлена ​​начиная с Rails 3.0, позволяя разработчику пройти через буфетную строку синтаксического сахара, предоставленного моделям в Rails, и поместить на тарелку только нужные биты.

Стойка драгоценных камней.
Rack предоставляет интерфейс к веб-серверу из приложений Ruby. Одним из элементов, поддерживаемых Rack, является промежуточное программное обеспечение , позволяющее передавать биты кода в конвейер веб-запросов / ответов и обеспечивать функциональность. rack-cache — это промежуточное ПО, обеспечивающее HTTP-кэширование. rack-test предоставляет API для тестирования приложений Rack (что такое Rails) в виде симпатичного DSL. Rack-mount обеспечивает маршрутизацию для Rails, которая управляет приятным интерфейсом RESTful стандартного приложения Rails.
Путешествовать пешком
Поход обрабатывает пути загрузки и поиска для Rails.

Наклон
Tilt предоставляет интерфейс для различных шаблонизаторов Ruby, таких как ERB и Haml.

Звездочки
Sprockets является новым в Rails 3.1, предоставляя новый конвейер упаковки ресурсов для javascript и coffeescript, а также для SASS и CSS.

TZInfo
TZInfo — библиотека часовых поясов для Ruby.

Ну, этот пост достигает точки, когда его нельзя прочитать в поезде или ждать у дантиста, поэтому я собираюсь разделить описания драгоценных камней на два поста. Мы заберем драгоценный камень Erubis в следующий раз. Я надеюсь, что вы найдете этот подход к обучению и обучению Rails. Как всегда, если вы хотите улучшить статью или добавить понимание, пожалуйста, оставьте комментарий.