4 мин на чтение

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

Прежде чем мы начнем, важно отметить, что, хотя это руководство поможет вам начать работу с Rails, оно предполагает некоторые предварительные знания таких концепций веб-разработки, как HTML, CSS и JavaScript. Если вы новичок в веб-разработке, стоит потратить некоторое время на ознакомление с этими концепциями, прежде чем продолжить.

Шаг 1. Установите рельсы

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

После установки Ruby вы можете установить Rails, используя следующую команду в своем терминале:

gem install rails

На ваш компьютер будет установлена ​​последняя версия Rails. Вы можете проверить версию Rails, которую вы установили, выполнив следующую команду:

rails -v

Шаг 2. Создайте новое приложение Rails

Установив Rails, вы готовы создать свое первое приложение Rails. Чтобы создать новое приложение Rails, перейдите в каталог, в котором вы хотите создать свое приложение, в своем терминале и выполните следующую команду:

rails new myapp

Замените «myapp» на название вашего приложения. Это создаст новое приложение Rails с указанным вами именем вместе со всеми необходимыми файлами и каталогами.

Шаг 3. Настройте базу данных

Далее вам нужно настроить базу данных. По умолчанию Rails использует SQLite в качестве базы данных, но вы также можете использовать другие базы данных, такие как MySQL или PostgreSQL, если хотите.

Чтобы настроить базу данных, откройте файл config/database.yml в каталоге вашего приложения и обновите параметры конфигурации, чтобы они соответствовали настройкам вашей базы данных. Например, если вы используете MySQL, у вас может быть такая конфигурация:

development:
  adapter: mysql2
  encoding: utf8mb4
  database: myapp_development
  username: root
  password: mypassword
  host: localhost
  port: 3306

Замените значения настройками вашей собственной базы данных. Как только вы это сделаете, выполните следующую команду, чтобы создать базу данных:

rails db:create

Это создаст вашу базу данных на основе указанных вами настроек.

Шаг 4. Создайте контроллер и представление

После настройки приложения и создания базы данных вы готовы создать контроллер и представление. Контроллер — это класс Ruby, который обрабатывает входящие запросы и генерирует ответы, а представление — это шаблон, который генерирует HTML для отображения в браузере.

Чтобы создать контроллер и представление, выполните в терминале следующую команду:

rails generate controller welcome index

Это создаст новый контроллер, вызываемый WelcomeControllerс действием под названием index, а также файл представления для этого действия.

Шаг 5. Измените представление

После создания контроллера и представления вы готовы изменить представление для отображения контента. Откройте файл app/views/welcome/index.html.erb в текстовом редакторе и замените содержимое следующим:

<h1>Welcome to my app!</h1>

<p>This is my first Rails app. I'm so excited!</p>

Сохраните файл и закройте его.

Шаг 6. Запустите сервер

Настроив контроллер и представление, вы готовы запустить сервер Rails и увидеть свое приложение в действии. Чтобы запустить сервер, выполните в терминале следующую команду:

rails server

Это запустит сервер Rails на вашем локальном компьютере, и вы должны увидеть вывод, который выглядит примерно так:

=> Booting Puma
=> Rails 6.1.3 application starting in development
=> Run `bin/rails server --help` for more startup options
Puma starting in single mode...
* Version 5.1.1 (ruby 3.0.0-p0), codename: Tallahassee Lassie
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://127.0.0.1:3000
* Listening on tcp://[::1]:3000
Use Ctrl-C to stop

После запуска сервера откройте веб-браузер и перейдите по адресу http://localhost:3000. Вы должны увидеть страницу приветствия вашего приложения с сообщением, которое вы добавили на предыдущем шаге.

Шаг 7. Добавьте модель и миграцию базы данных

Теперь, когда у вас есть работающее веб-приложение, вы можете добавить в него модель и выполнить миграцию базы данных, чтобы создать соответствующую таблицу в вашей базе данных.

В этом примере давайте создадим модель записей в блоге. Чтобы создать новую модель, выполните в терминале следующую команду:

rails generate model Post title:string content:text

Это создаст новую модель Postс двумя атрибутами: title и content.

Далее вам необходимо создать миграцию базы данных, чтобы создать таблицу posts в вашей базе данных. Для этого выполните следующую команду:

rails generate migration CreatePosts

Это создаст новый файл миграции db/migrate в каталоге. Откройте файл в текстовом редакторе и замените содержимое следующим:

class CreatePosts < ActiveRecord::Migration[6.1]
  def change
    create_table :posts do |t|
      t.string :title
      t.text :content

      t.timestamps
    end
  end
end

Сохраните файл и закройте его.

Шаг 8. Запустите миграцию

Создав файл миграции, вы готовы запустить миграцию и создать posts таблицу в своей базе данных. Для этого выполните в терминале следующую команду:

rails db:migrate

Это применит миграцию к вашей базе данных и создаст таблицу posts.

Шаг 9. Добавьте функциональность CRUD

Теперь, когда у вас есть модель и соответствующая таблица базы данных, вы можете добавить в свое приложение функциональность CRUD (создание, чтение, обновление, удаление).

Для этого вам необходимо изменить контроллер и представления для обработки различных действий CRUD. Например, чтобы создать новую публикацию, вы можете добавить в свой файл следующий код PostsController:

def new
  @post = Post.new
end

def create
  @post = Post.new(post_params)

  if @post.save
    redirect_to @post
  else
    render 'new'
  end
end

private

def post_params
  params.require(:post).permit(:title, :content)
end

А чтобы отобразить список всех записей, вы можете добавить в представление index.html.erb следующий код:

<% @posts.each do |post| %>
  <div class="post">
    <h2><%= post.title %></h2>
    <p><%= post.content %></p>
  </div>
<% end %>

Вам также потребуется изменить файл routes.rb, чтобы добавить маршруты для различных действий CRUD. Например, чтобы добавить маршрут для создания нового поста, вы можете добавить следующий код:

resources :posts

Это создаст маршруты для всех действий CRUD для вашей Post модели.

Шаг 10. Проверьте свое приложение

После добавления функциональности CRUD вам следует протестировать свое приложение, чтобы убедиться, что все работает должным образом. Откройте веб-браузер и перейдите по адресу http://localhost:3000/posts. Вы должны увидеть список всех записей в вашей базе данных. Нажмите кнопку «Новое сообщение», чтобы создать новое сообщение, заполните форму и нажмите «Создать запись», чтобы сохранить её. Вы должны быть перенаправлены на вновь созданный пост.

ВСЁ :wave:

Разделы:

Дата изменения:

Оставить комментарий