Привет! Я часть поставщика рельсов, и я знаю кое -что о создании новых приложений Rails. В этом блоге я проведу вас всему процессу, от начала работы до полного, сбежавшего приложения.
Предварительные условия
Прежде чем мы приступим к созданию нового приложения Rails, вы должны убедиться, что у вас есть несколько вещей, установленных на вашей машине. Во -первых, вам нужна Ruby. Rails - это рубиновая структура, поэтому необходимо иметь совместимую версию Ruby. Вы можете использовать такие инструменты, как RBENV или RVM для управления различными версиями Ruby.
Далее вам понадобятся сами рельсы. Вы можете установить его через командную строку, используяGem Установите рельсы
Полем Драгоценные камни похожи на пакеты в Ruby, и эта команда принесет и установит для вас драгоценный камень Rails. Кроме того, установленная система управления базами данных, такая как SQLite, PostgreSQL или MySQL, является обязательным. Для начинающих SQLite - отличный выбор, так как он легкий и легко настроить.
Создание приложения Rails
Как только у вас все предпосылки отсортировали, пришло время создать приложение Rails. Откройте свой терминал и перейдите в каталог, где вы хотите создать приложение. Затем запустите следующую команду:
Rails new my_new_app
Здесь,my_new_app
это название вашего приложения. Вы можете изменить его на все, что вам нравится. Эта команда создаст новое приложение Rails с основной структурой каталога. Он настраивает все необходимые файлы и папки для вас, включая конфигурацию базы данных, маршруты, контроллеры и представления.
Понимание структуры каталога
Когда приложение Rails создано, оно имеет хорошо - определенную структуру каталогов. Давайте быстро рассмотрим некоторые из важных каталогов:
приложение
: Здесь живет большая часть вашего кода приложения. Внутри, ты найдешьконтроллеры
Вмодели
Ввиды
, иПомощники
Полем Контроллеры обрабатывают входящие запросы, модели взаимодействуют с базой данных, представления отвечают за рендеринг HTML, а помощники предоставляют функции утилиты.конфигурация
: Здесь вы найдете файлы конфигурации для вашего приложения, например, конфигурация базы данных вDatabase.yml
и конфигурация маршрутизации вRoutes.rb
ПолемдБ
: Этот каталог содержит базу данных - соответствующие файлы, такие как миграции (которые используются для изменения схемы базы данных) иСемена
Файл (используется для заполнения базы данных начальными данными).публичный
: Это корневый каталог для статических файлов вашего приложения, таких как изображения, CSS и JavaScript.
Настройка базы данных
Как я упоминал ранее, вам нужно настроить базу данных. Открытьconfig/database.yml
файл. Если вы используете SQLite (по умолчанию), вам не нужно много менять. Но если вы используете PostgreSQL или MySQL, вам нужно предоставить соответствующее имя пользователя, пароль и имя базы данных.
После настройки конфигурации вы можете создать базу данных, запустив:
Rails DB: Создать
Эта команда создаст базы данных разработки и тестирования на основе вашей конфигурации. Чтобы настроить начальную схему базы данных, вы можете запустить миграции. Например, если вы сгенерировали модель с миграцией (мы поговорим об этом позже), вы можете запустить:
Rails DB: мигрируйте
Генерирование моделей, контроллеров и представлений
Одной из замечательных вещей в Rails является его генераторы. Они могут сэкономить вам много времени, создав для вас код шаблона.
Создание модели
Чтобы создать новую модель, запустите следующую команду:
Рельсы генерируют название продукта модели: строковая цена: десятичная
Это создастПродукт
модель симя
(строка) ицена
(десятичные) атрибуты. Это также создаст файл миграции вдБ/мигрируйте
каталог. После создания модели запуститеRails DB: мигрируйте
Чтобы применить миграцию и создать соответствующую таблицу в базе данных.
Создание контроллера
Чтобы создать контроллер, используйте следующую команду:
Rails генерирует индекс продуктов контроллера.
Это создастProductsController
синдекс
ипоказывать
действия Аиндекс
действие обычно используется для отображения списка элементов ипоказывать
Действие используется для отображения одного элемента.
Генерирующие виды
Когда вы генерируете контроллер, Rails также создает соответствующие файлы представления вприложение/просмотры
каталог. Например, дляProductsController
Мы только что создали, Rails создастApp/Views/products/index.html.erb
иApp/Views/Products/show.html.erb
файлы Вы можете отредактировать эти файлы, чтобы добавить свой HTML и использовать Embedded Ruby (ERB) для отображения динамического содержания.
Маршруты
Маршруты в рельсах определяют, как входящие запросы отображаются с контроллерами и действиями. Открытьconfig/routes.rb
файл. Вы можете определить такие маршруты:
Railss.application.routes.draw do Get 'продукты', на: 'Продукты#index' Get 'Products/: id', to: 'Продукты#show' end
Здесь первый маршрут отображает запрос получить запрос на/продукты
виндекс
действиеProductsController
Полем Второй маршрут отображает запрос получить/продукты/1
(где1
является идентификатором) дляпоказывать
действиеProductsController
Полем
Добавление некоторой функциональности
Давайте добавим некоторые основные функциональные возможности в нашуProductsController
Полем ОткрытьApp/Controllers/products_controller.rb
файл.
Class ProductsController <ApplicationController def index @products = product.all End def show @product = product.find (params [: id]) End End
Виндекс
действие, мы получаем все продукты из базы данных и храним их в@products
переменная экземпляра. Впоказывать
действие, мы находим один продукт на основеидентификатор
параметр в URL.
Теперь давайте обновим представления. ВApp/Views/products/index.html.erb
, вы можете отобразить список таких продуктов, как это:
<h1> Продукты </h1> <ul> <% @products.each do | Продукт | %> <li> < %= link_to product.name, product_path (product) %> </li> < %end %> </ul>
И вApp/Views/Products/show.html.erb
, вы можете отобразить детали одного продукта:
<h1> < %= @product.name %> </h1> <p> Цена: < %= @product.price %> </p>
Тестирование вашего приложения
Тестирование является важной частью любой разработки приложений. Rails поставляется со встроенной - в рамках тестирования. Вы можете написать тесты для ваших моделей, контроллеров и представлений.
Чтобы написать тест для модели, создайте тестовый файл втест/модели
каталог. Например, дляПродукт
модель, вы можете создатьproduct_test.rb
файл:
Требовать 'test_helper' класс ProductTest <activeSupport :: testcase test "должен быть действительным" Do Product = Product.new (Имя: 'Тестовый продукт', цена: 10.0) Assert product.valid? конец
Чтобы запустить тесты, просто запустите:
Тест рельсов
Развертывание вашего приложения
Как только ваше приложение будет готово, вы захотите развернуть его. Есть несколько хостинг -провайдеров, таких как Heroku, AWS и DigitaloCean.
Если вы используете Heroku, вы можете выполнить эти шаги:
- Подпишитесь на учетную запись Heroku.
- Установите Heroku CLI.
- Перейдите к своему каталогу приложений в терминале и запустите:
Хероку создать
Это создаст для вас новое приложение Heroku. Затем вы можете развернуть свое приложение, выдвинув свой код в репозиторий Heroku GIT:
git push heroku Master
После развертывания вам может потребоваться запустить миграции в производственной базе данных:
Heroku Run Rails DB: мигрируйте
Наши рельсы предложения
Как поставщик рельсов, мы предлагаем широкий ассортимент продукции Rails. Если вы заинтересованы в высоких - качественные рельсы, проверьте нашиОн 22 кгВБританский стандарт BSC13 Стальной рельс, и90 фунтов железной дорогиПолем Эти рельсы известны своей долговечностью и производительностью.
Если вы хотите создать свое собственное приложение Rails или вам нужна помощь в продуктах Rails, не стесняйтесь связаться с нами. Мы здесь, чтобы помочь вам на каждом этапе пути, будь то настройка приложения, оптимизация производительности или развертывание его для производства.
Ссылки
- Официальная документация Rails
- «Agile Web Development с Rails» Сэма Руби, Дейва Томаса и Дэвида Хейнемиера Ханссона