Како изградити Ruby on Rails апликацију на Ubuntu 22.04

Како изградити Ruby on Rails апликацију на Ubuntu 22.04

Увод

Ruby on Rails је популаран веб фрејмворк који је написан у програмском језику Ruby. Дизајниран је да олакша и убрза развој веб апликација. Rails апликације су познате по својој MVC (модел, преглед, контролер) архитектури, која пружа јасну и структурну организацију кода. У овом водичу ћемо вас провести кроз процес инсталације неопходних компоненти и изградње основне Ruby on Rails апликације на Ubuntu 22.04.

Инсталација потребних компоненти

Инсталација Ruby

Први корак је инсталирање Ruby на ваш Ubuntu систем. Можете користити следећу команду за инсталацију најновије подржане верзије:


sudo apt update
sudo apt install ruby-full

Инсталација Rails

Након инсталирања Ruby, можете наставити са инсталацијом Rails-а коришћењем следеће команде:


sudo gem install rails

Инсталација Node.js и Yarn

Rails користи Node.js и Yarn за управљање Јаваскрипт пакетима. Инсталирајте их следећим командама:


sudo apt install nodejs
sudo npm install -g yarn

Постављање нове Rails апликације

Сада када су инсталиране све потребне компоненте, можете поставити нову Rails апликацију користећи следећу команду:


rails new my_app

Ова команда ће креирати директоријум са именом my_app који садржи структуру датотека и директоријума за вашу апликацију.

Покретање апликације

Да бисте покренули апликацију, пређите у директоријум апликације и покрените следећу команду:


rails s

Ова команда ће покренути развојни веб сервер који ће приказивати вашу апликацију на http://localhost:3000.

Структура Rails апликације

Rails апликације су организоване у следећим директоријумима:

* app: Садржи контролере, моделе и прегледе
* config: Садржи конфигурационе фајлове за апликацију
* db: Садржи базе података и миграције
* lib: Садржи додатне библиотеке кода које користи апликација
* log: Садржи датотеке евиденције апликације
* public: Садржи јавне фајлове као што су слике, стилови и Јаваскрипт датотеке
* test: Садржи код за тестирање апликације
* tmp: Садржи привремене фајлове који се користе током извршавања апликације
* vendor: Садржи зависне библиотеке које се користе у апликацији

Стварање модела

Модел представља апстрактни опис домена апликације. У Rails-у, модели су дефинисани у директоријуму app/models. Можете створити нови модел користећи следећу команду:


rails generate model Post title:string body:text

Ова команда ће креирати фајл app/models/post.rb који садржи класу Post која представља модел података за објаве.

Стварање контролера

Контролер је одговоран за руковање HTTP захтевима и одговорима. У Rails-у, контролери су дефинисани у директоријуму app/controllers. Можете створити нови контролер користећи следећу команду:


rails generate controller Posts

Ова команда ће креирати фајл app/controllers/posts_controller.rb који садржи класу PostsController која представља контролер за објаве.

Стварање прегледа

Преглед је одговоран за генерисање HTML одговора који се враћа кориснику. У Rails-у, прегледи су дефинисани у директоријуму app/views. Rails ће аутоматски креирати одговарајуће фајлове прегледа за све акције у контролеру.

Руте

Руте дефинишу како се HTTP захтеви мапирају на одговарајуће контролере и акције. У Rails-у, руте су дефинисане у фајлу config/routes.rb. Следећи код дефинише руту за индекс акцију PostsController:


Rails.application.routes.draw do
resources :posts
end

Миграције

Миграције су начин за управљање шемом базе података. Када направите промене у моделима, морате да креирате одговарајућу миграцију користећи следећу команду:


rails generate migration AddColumnToPosts

Ова команда ће креирати фајл db/migrate/add_column_to_posts.rb који садржи миграцију за додавање нове колоне у табелу posts.

Закључак

У овом водичу смо покрили основне кораке за изградњу Ruby on Rails апликације на Ubuntu 22.04. Истражили смо структуру Rails апликације и показали како да креирате моделе, контролере, прегледе и руте. Такође смо објаснили како да управљамо шемом базе података помоћу миграција. Следите ове кораке и почните са изградњом својих сопствених Rails апликација.

Често постављана питања

1. Које су предности коришћења Ruby on Rails?

* Скраћено време развоја
* Једноставна и јасна архитектура
* Велика заједница и подршка
* Богата библиотека интегрисаних функција

2. Да ли је потребно знати Ruby пре коришћења Rails?

Да, основно разумевање Ruby-ја је неопходно за ефективно коришћење Rails-а.

3. Како могу да обновим базу података након што урадим промене у моделу?

Покрените команду rails db:migrate да бисте применили промене на базу података.

4. Где могу да пронађем додатну документацију о Rails-у?

Rails водич: https://guides.rubyonrails.org
Званични Rails репозиторијум: https://github.com/rails/rails

5. Како могу да поставим Rails апликацију у производно окружење?

Користите Passenger, Nginx или Puma као веб сервер и конфигуришите базе података и друге потребне компоненте.

6. Да ли је могуће користити друге програмске језике осим Ruby-ја са Rails-ом?

Не, Rails је дизајниран да ради искључиво са Ruby-јем.

7. Шта су драгуљи и како их могу да користим?

Драгуљи су додатни модули који пружају додатне функције за Rails апликације. Можете их инсталирати користећи команду gem install.

8. Како могу да дебагујем Rails апликације?

Користите командне линијске алате као што су byebug и pry, као и алате за дебаговање интегрисане развојне средине.