Pokud jste vývojář, který hledá spolehlivý, open-source, multiplatformní webový vývojový rámec pro Linux, Ruby on Rails je pro vás skvělou volbou. Pomáhá jim vytvářet aplikace a webové stránky tím, že abstrahuje a zjednodušuje opakující se úkoly, ke kterým dochází během vývoje. Říká se tomu Ruby on Rails, protože Rails je napsán v programovacím jazyce Ruby, stejně jako Symfony a Zend jsou napsány v PHP a Django je napsáno v Pythonu. Rails poskytuje standardní struktury pro databáze, webové servery a webové stránky. Slavné aplikace jako Soundcloud, Github a Airbnb jsou založeny na Rails. Ruby on Rails je licencován pod MIT a byl poprvé vydán v prosinci 2005. Všechny jeho repozitáře jsou dostupné na Github, včetně nejnovější verze k dnešnímu dni.
V tomto článku poskytneme podrobné pokyny pro instalaci a konfiguraci Ruby on Rails se všemi jejími požadavky. Poté vysvětlíme, jak nainstalovat a nakonfigurovat databázi PostgreSQL pro vytvoření vašeho prvního projektu Rails. Nakonec také vytvoříme jednoduché rozhraní CRUD, aby byla vaše aplikace interaktivnější a užitečnější.
Příkazy a procedury uvedené v tomto článku jsme spustili na systému Debian 10 Buster. K instalaci a konfiguraci Ruby on Rails používáme příkazový řádek Debianu, terminál. K terminálové aplikaci můžete přistupovat tak, že prohledáte Spouštěč aplikací následovně:
Spouštěč aplikací je přístupný pomocí klávesy Super/Windows na klávesnici.
Instalace Ruby on Rails (RoR) na Debian 10
Abyste mohli nainstalovat Ruby on Rails, musíte mít v systému nainstalované a nakonfigurované nejnovější verze některých předpokladů, jako například:
- Správce verzí RVM-Ruby
- Ruby
- Nodejs- Javascript runtime
- Ruby Gems-Ruby Package Manager
V této části nejprve připravíme náš systém tak, že nejprve nainstalujeme všechny tyto krok za krokem, nastavíme jejich nejnovější verze a nakonec nainstalujeme Ruby on Rails.
1. Nainstalujte správce verzí Ruby (RVM)
Správce verzí Ruby nám pomáhá při správě instalace Ruby a konfiguraci více verzí Ruby na jednom systému. Chcete-li nainstalovat balíček RVM pomocí instalačního skriptu, postupujte takto:
Krok 1:Přidejte do systému klíč RVM
Chcete-li přidat klíč RVM, spusťte následující příkaz; tento klíč bude potřeba při instalaci stabilní verze RVM:
$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \
7D2BAF1CF37B13E2069D6956105BD0E739499BDB
Krok 2:Instalace Curl
Budeme instalovat RVM přes Curl. Protože není standardně dodáván s nejnovějšími verzemi Debianu, budeme jej muset nainstalovat pomocí následujících příkazů jako sudo:
$ sudo apt-get install curl
Vezměte prosím na vědomí, že pouze oprávnění uživatelé mohou přidávat/odebírat a konfigurovat software v Debianu.
Systém vás vyzve k potvrzení instalace volbou Y/n. Pokračujte zadáním Y, poté se Curl nainstaluje do vašeho systému.
Krok 3:Nainstalujte verzi RVM Stable
Nyní spusťte následující příkaz, abyste nainstalovali nejnovější stabilní verzi RVM.
$ curl -sSL https://get.rvm.io | bash -s stable --ruby
Tento příkaz také automaticky nainstaluje všechny požadované balíčky potřebné k instalaci RVM.
Proces bude nějakou dobu trvat v závislosti na rychlosti vašeho internetu, poté bude RVM nainstalován do vašeho systému.
Krok 4:Nastavení zdrojové složky RVM
Upozorňujeme, že posledních několik řádků výstupu instalace RVM navrhuje spuštění následujícího příkazu:
$ source /home/[username]/.rvm/scripts/rvm
Slouží k nastavení zdrojové složky na tu uvedenou ve výstupu. Chcete-li začít používat RVM, musíte tento příkaz spustit.
Při nastavování zdroje získáte následující výstup:
Nyní je nastaven zdroj pro RVM. Číslo verze RVM nainstalovaného ve vašem systému můžete zkontrolovat pomocí následujícího příkazu:
$ rvm --version
To také zajišťuje, že RVM je skutečně nainstalován ve vašem systému.
2. Nakonfigurujte nejnovější verzi Ruby jako výchozí systém
Při instalaci RVM se do vašeho systému nainstaluje také nejnovější verze Ruby. Co však musíme udělat, je nastavit náš systém tak, aby jako výchozí systém používal nejnovější verzi Ruby. Postupujte podle následujících kroků:
Krok 1:Získejte seznam všech dostupných verzí Ruby
Následující příkaz vám poskytne seznam všech dosud vydaných verzí Ruby:
$ rvm list known
Prostřednictvím tohoto seznamu vyberte nejnovější dostupnou verzi Ruby. Jak můžete vidět ve výstupu, Ruby 2.7 je nejnovější dostupná verze.
Krok 2:Nainstalujte nejnovější verzi Ruby
Nyní nainstalujte nejnovější verzi Ruby, kterou jste vybrali v předchozím kroku, spuštěním následujícího příkazu rvm:
$ rvm install ruby-2.7
Tento proces může nějakou dobu trvat v závislosti na rychlosti vašeho internetu, poté bude do vašeho systému nainstalován vybraný počet Ruby.
Krok 3:Nastavte nejnovější verzi Ruby jako výchozí
Následující příkaz rvm vám pomůže nastavit nejnovější nainstalovanou verzi Ruby jako výchozí systém:
$ rvm --default use ruby-2.7
Můžete vidět, že nyní můj systém bude používat Ruby 2.7.0 jako výchozí verzi Ruby
V případě chyby:
Po spuštění výše uvedeného příkazu můžete také získat následující výstup:
V takovém případě spusťte následující příkaz pro povolení přihlašovacího prostředí:
Poté znovu spusťte následující příkaz a nastavte verzi Ruby:
$ rvm --default use ruby-2.7
Tuto výchozí verzi lze také ověřit spuštěním následujícího příkazu:
$ ruby -v
3. Nainstalujte Nodejs a kompilátor gcc
Než začnete s vývojem Rails na Debianu, doporučujeme použít Nodejs jako běhový modul Javascriptu. Je to nezbytný předpoklad pro sestavení potrubí aktiv Ruby on Rails.
Krok 1:Nainstalujte nejnovější verzi Nodejs
K instalaci úložiště Nodesource do vašeho systému použijte následující příkaz:
$ curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
Nyní nainstalujte nejnovější verzi Nodejs pomocí následujícího příkazu apt jako sudo:
$ sudo apt-get install -y nodejs
Na vašem systému bude nainstalována nejnovější dostupná verze Nodejs 10
Krok 2:Nainstalujte kompilátor gcc
Kompilátor gcc je dalším předpokladem, který musíte nainstalovat před provedením jakéhokoli vývoje Rails. K instalaci použijte následující příkaz jako sudo:
$ sudo apt-get install gcc g++ make
5.Nakonfigurujte nejnovější verzi RubyGems jako výchozí systém
Při instalaci RVM se do vašeho systému nainstaluje také RubyGems. Co však musíme udělat, je nastavit náš systém tak, aby používal nejnovější verzi RubyGems jako výchozí systém. Ruby Gems je v podstatě správce balíčků Ruby on Rails, který je dodáván s nástrojem-gem příkazového řádku.
Spusťte následující příkaz gem, abyste aktualizovali systém, aby používal nejnovější verzi:
$ gem update --system
Když nyní zkontrolujete číslo verze pomocí následujícího příkazu, uvidíte na příkazovém řádku, že váš systém používá nejnovější verzi RubyGems:
$ gem -v
5. Nainstalujte Ruby on Rails
Nakonec, po instalaci všech předpokladů, můžeme nyní nainstalovat Ruby on Rails do našeho systému podle následujících kroků:
Krok 1:Vyhledejte nejnovější dostupnou verzi
Web RubyGems až do dnešního dne udržuje všechny verze Ruby on Rails na následujícím odkazu:
https://rubygems.org/gems/rails/versions
Vyberte nejnovější verzi Ruby on Rails, kterou chcete nainstalovat. V době psaní tohoto článku je nejnovější dostupná verze 6.0.2.1.
Krok 2:Nainstalujte nejnovější verzi
Nejnovější verzi Ruby on Rails můžete nainstalovat pomocí nástroje příkazového řádku gem takto:
$ gem install rails -v 6.0.2.1
Proces instalace může nějakou dobu trvat v závislosti na vašem internetovém připojení.
Po dokončení instalace spusťte následující příkaz a zobrazte verzi Rails nainstalovanou ve vašem systému.
$ rails -v
Příkaz také ověřuje, zda je Ruby on Rails skutečně nainstalován ve vašem systému.
Vývoj kolejnic
Ruby on Rails podporuje mnoho databází, jako je SQLite, MySQL a PostgreSQL. V této části vysvětlíme, jak začít s vývojem Rails s PostgreSQL. To bude zahrnovat:
- Instalace databáze PostgreSQL
- Konfigurace PostgreSQL a vytváření rolí
- Vaše aplikace First Rails
- Vytvoření jednoduchého CRUD s databází PostgreSQL na Rails
1. Instalace a nastavení databáze PostgreSQL
Krok 1:Nainstalujte PostgreSQL
K instalaci databáze PostgreSQL a některých dalších požadovaných balíčků použijte následující příkaz apt jako sudo:
$ sudo apt-get install postgresql postgresql-contrib libpq-dev -y
Krok 2:Spusťte a povolte službu Postgresql
Jakmile je PostgreSQL nainstalován, musíte spustit službu postgresql pomocí následujícího příkazu:
$ systemctl start postgresql
Systém vás vyzve autentizačním dialogem, protože služby v Debianu může povolit pouze oprávněný uživatel. Zadejte heslo správce a klikněte na tlačítko Authenticate, po kterém se služba spustí.
Dalším krokem je povolit službu pomocí následujícího příkazu:
$ systemctl enable postgresql
Systém vás vyzve k podobnému autentizačnímu dialogu několikrát; pokaždé zadejte heslo správce a klikněte na tlačítko Authenticate, po kterém bude služba povolena.
Krok 3:Ověřte instalaci
Chcete-li zobrazit podrobnou zprávu o stavu vaší instalace PostgreSQL, spusťte prosím následující příkaz:
$ dpkg --status postgresql
2. Konfigurace PostgreSQL a vytvoření rolí
Aplikace PostgreSQL mohou být vytvářeny uživatelem nebo rolemi. Ve výchozím nastavení existuje uživatel „postgres“, což je super uživatel a může vytvářet a migrovat databáze a také spravovat další uživatelské role.
Zpočátku se můžete přihlásit jako sudo na PostgreSQL pomocí následujícího příkazu:
$ sudo -u postgres psql
Zde můžete změnit heslo postgres následovně:
postgress=# \password postgres
Vytvořit roli
Super uživatel může vytvořit novou uživatelskou roli pomocí následujícího příkazu:
vytvořte roli „název_role“ s vytvořenýmb přihlašovacím heslem „‘heslo““;
Příklad:
postgress=# create role dev_rails with createdb login password 'rockon123' ;
Vytváříme roli s názvem „dev_rails“. Toto je uživatel, který vytvoří db pro naši první aplikaci Rails.
Superuživatel si může zobrazit seznam rolí existujících na PostgreSQL takto:
postgress=# \du
Použijte Ctrl+z k ukončení PostgreSQL.
3. Vaše první aplikace Rails
Nyní vytvoříme naši první aplikaci Rails s PostgreSQL jako výchozí databází. To zahrnuje následující kroky:
Krok 1:Vytvořte novou aplikaci
Vytvořte nový projekt s názvem „firstapp“ nebo jakýmkoli jiným názvem pomocí následujícího příkazu a zadejte PostgreSQL jako databázi následovně:
$ rails new firstapp -d postgresql
Tím vytvoříte složku projektu ve vaší domovské složce následovně:
$ ls
Krok 2:Nakonfigurujte svůj projekt Rails tak, aby zahrnoval uživatelskou roli PostgreSQL
Nyní chceme, aby uživatelská role, kterou jsme vytvořili v PostgreSQL, mohla vytvářet databázi v aplikaci Rails. K tomu potřebujeme upravit soubor database.yml umístěný ve složce vaší nově vytvořené aplikace ve složce /config/.
Přesuňte se do své první aplikace a poté do konfigurační složky následovně:
$ cd firstapp/config/
Zde uvidíte soubor database.yml. Tento soubor můžete upravit pomocí svého oblíbeného textového editoru. Provedeme to pomocí editoru Nano pomocí následujícího příkazu:
$ nano database.yml
V tomto souboru uvidíte hlavně tři sekce:
- Vývoj
- Test
- Produkce
Budeme muset nakonfigurovat sekce Development a Test souboru.
Proveďte následující konfigurace v sekci Vývoj
databáze:firstapp_development
uživatelské jméno:dev_rails heslo:rockon123 hostitel:localhost port:5432 |
A následující v části Test:
databáze:firstapp_test
uživatelské jméno:dev_rails heslo:rockon123 hostitel:localhost port:5432 |
Poznámka: Ujistěte se prosím, že je syntaxe správná. Před každým řádkem by měly být 2 mezery a NE karty.
Uložte soubor stisknutím Ctrl+X, poté Y a poté stisknutím klávesy Enter.
Krok 3:Vygenerujte a poté migrujte databázi
Vygenerujte databázi pomocí následujícího příkazu rails:
$ rails db:setup
V Debianu se může zobrazit následující chyba:
Spusťte tedy příkaz uvedený na výše uvedeném snímku obrazovky:
A pak znovu spusťte příkaz ‚rails db:setup‘:
Ujistěte se prosím, že tam nejsou žádné chyby. Většina chyb je způsobena nesprávnou syntaxí souboru database.yml nebo nekonzistencí uživatelského jména a hesla od toho, které jste vytvořili v PostgreSQL.
Po úspěšném vygenerování proveďte migraci databáze pomocí následujícího příkazu rails:
$ rails db:migrate
Krok 4:Spusťte webový server Puma Rails
Před úspěšným spuštěním webového serveru Puma Rails musíte mít ve svém systému nainstalovaný Yarn. Yarn můžete na Debian nainstalovat pomocí následující sady příkazů:
$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
$ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
a poté,
$ sudo apt-get upate
$ sudo apt install --no-install-recommends yarn
Dalším předpokladem je nainstalovat WebPacker prostřednictvím Rails následovně:
Po dokončení nastavení aplikace zadejte následující příkaz, aby se spustil výchozí webový server Puma:
$ rails s -b localhost -p 8080
Nebo v našem případě
$ rails s -b 127.0.0.1 -p 8080
Po tomto příkazu bude vaše první aplikace Rails spuštěna na místním hostiteli na portu 8080.
Krok 5:Otevřete výchozí domovskou stránku projektu Rails
Úspěšně hostovanou databázi můžete zobrazit na výchozí domovské stránce projektu Rails zadáním adresy URL do jednoho ze svých webových prohlížečů:
http://localhost:8080/
Nyní můžete na této jednoduché aplikaci provádět jakoukoli operaci CRUD. Postupujte podle tohoto článku, aby byla vaše aplikace o něco interaktivnější.
4. Vytvořte jednoduchý CRUD s PostgreSQL databází na Rails
Udělejme naši aplikaci interaktivnější implementací rozhraní CRUD (Create, Read, Update, Delete).
Krok 1:Vytvořte lešení v Rails
Spusťte následující příkaz, abyste vytvořili lešení ve složce aplikace Rails
$ rails g scaffold Post title:string body:text
Poté migrujte databázi spuštěním následujícího příkazu:
$ rake db:migrate
Krok 2:Spusťte aplikaci na webovém serveru Puma Rails
Dále spusťte aplikaci na localhost opětovným spuštěním webového serveru Puma pomocí následujícího příkazu:
$ rails s -b localhost -p 8080
Můžete také použít svou IP localhost, jako my pro výše zmíněný příkaz:
$ rails s -b 127.0.0.1 -p 8080
Krok 3:Otevřete stránku „Příspěvky“ v projektu Rails
Úspěšně hostovanou databázi můžete zobrazit na stránce projektu Rails zadáním adresy URL do jednoho ze svých webových prohlížečů:
http://localhost:8080/posts/
Nebo použijte localhost IP jako my:
http://127.0.0.1:8080/posts
Uvidíte jednoduché rozhraní CRUD, jehož prostřednictvím můžete vytvářet, upravovat, zobrazovat a ničit příspěvky.
Když jsem vytvořil příspěvek pomocí odkazu Nový příspěvek, moje stránka s příspěvky teď vypadá takto: