Как собрать приложение Ruby on Rails

Вступление

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

Rails следует архитектурному шаблону model-view-controller (MCV), который разделяет логику приложения, расположенную в моделях. , от маршрутизации и представления информации о приложении. Эта организационная структура - наряду с другими соглашениями, которые позволяют разработчикам извлекать код в helpers и https://api.rubyonrails.org/classes/ActionView/ PartialRenderer.html [partials] - гарантирует, что код приложения не будет излишне повторять https://en.wikipedia.org/wiki/Don%27t_repeat_yourself

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

Предпосылки

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

  • Локальный компьютер или сервер разработки под управлением Ubuntu 18.04. Ваша машина разработки должна иметь пользователя без полномочий root с правами администратора и брандмауэром, настроенным с помощью + ufw +. Инструкции о том, как это настроить, см. В нашем учебном руководстве Initial Настройка сервера с Ubuntu 18.04.

  • https://nodejs.org [Node.js] и npm, установленные на локальном компьютере или на сервере разработки. В этом руководстве используются версия Node.js и версия npm. Для получения инструкций по установке Node.js и npm в Ubuntu 18.04 следуйте инструкциям в разделе «Установка с использованием PPA» на странице https://www.digitalocean.com/community/tutorials/how-to-install-node-js-. on-ubuntu-18-04 # Установка-использование-a-ppa [Как установить Node.js в Ubuntu 18.04].

  • Ruby, rbenv и Rails, установленные на локальном компьютере или на сервере разработки, следуя шагам 1-4 в https://www.digitalocean.com/community/tutorials/how- to-install-ruby-on-rails-with-rbenv-on-ubuntu-18-04 [Как установить Ruby on Rails с помощью rbenv в Ubuntu 18.04]. В этом руководстве используются Ruby, rbenv и Rails.

Шаг 1 - Установка SQLite3

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

Сначала обновите индекс вашего пакета:

sudo apt update

Затем установите пакеты + sqlite3 + и + libsqlite3-dev:

sudo apt install sqlite3 libsqlite3-dev

Это установит и SQLite, и его необходимые файлы для разработки.

Проверьте свою версию, чтобы подтвердить, что установка прошла успешно:

sqlite3 --version
Output 2018-01-22 18:45:57

Установив SQLite, вы готовы приступить к разработке приложения.

Шаг 2 - Создание нового проекта Rails

С нашей установленной базой данных мы можем создать новый проект Rails и посмотреть на стандартный шаблонный код, который Rails дает нам с помощью `+rails new + ` команда.

Создайте проект с именем ++ с помощью следующей команды:

rails new

Вы увидите много информации о том, что Rails создает для вашего нового проекта. Вывод ниже выделяет некоторые важные файлы, каталоги и команды:

Output     create
    . . .
    create  Gemfile
    . . .
     create  app
     . . .
     create  app/controllers/application_controller.rb
     . . .
     create  app/models/application_record.rb
     . . .
     create  app/views/layouts/application.html.erb
     . . .
     create  config
     create  config/routes.rb
     create  config/application.rb
     . . .
     create  config/environments
     create  config/environments/development.rb
     create  config/environments/production.rb
     create  config/environments/test.rb
     . . .
     create  config/database.yml
     create  db
     create  db/seeds.rb
     . . .
        run  bundle install
     . . .
Bundle complete! 18 Gemfile dependencies, 78 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
     . . .
* bin/rake: Spring inserted
* bin/rails: Spring inserted

Выделенный здесь вывод говорит о том, что Rails создал следующее:

  • + Gemfile +: в этом файле перечислены зависимости gem для вашего приложения. Https://guides.rubygems.org/what-is-a-gem/[gem] представляет собой пакет программного обеспечения Ruby, а Gemfile позволяет вам управлять программными потребностями вашего проекта.

  • + app +: каталог + app + - это то место, где живет ваш основной код приложения. Сюда входят модели, контроллеры, представления, активы, помощники и почтовые программы, которые составляют само приложение. Rails дает вам некоторый шаблон уровня приложения для модели MCV, которая запускается в таких файлах, как + app / models / application_record.rb +, + app / controllers / application_controller.rb + и `+ app / views / layouts / application .html.erb + `.

  • + config +: этот каталог содержит параметры конфигурации вашего приложения:

  • + config / rout.rb +: объявления маршрутов вашего приложения находятся в этом файле.

  • + config / application.rb +: общие настройки для компонентов вашего приложения находятся в этом файле.

  • + config / environment +: в этом каталоге находятся параметры конфигурации для ваших сред. Rails включает в себя три среды по умолчанию: + development,` + production` и + test.

  • + config / database.yml +: параметры конфигурации базы данных находятся в этом файле, который разбит на четыре раздела: + default +, + development +, + production + и + test +. Благодаря Gemfile, поставляемому с командой + rails new +, которая включала гем + sqlite3 +, наш файл + config / database.yml + уже имеет свой параметр + adapter +, установленный в + sqlite3 +, указывая что мы будем использовать базу данных SQLite с этим приложением.

  • + db +: эта папка содержит каталог для базы данных migrations с именем + migrate +, а также + schema.rb + и + seed.rb + файлы. + schema.db + содержит информацию о вашей базе данных, а + seed.rb + - это место, где вы можете разместить начальные данные для базы данных.

Наконец, Rails запускает команду +bundle install + ` для установки зависимостей, перечисленных в вашем

Related