Ruby on Rails õpetus algajatele projekti ja näitega

Mis on Ruby?

rubiin on kõrgetasemeline, tõlgendatud ja objektorienteeritud programmeerimiskeel. See on dünaamiline avatud lähtekoodiga keel, mille taga on suurepärane kogukond. Ruby loodi lihtsuse ja tootlikkuse jaoks. See julgustab kirjutama inimese ja arvuti teise tarkvarakoodi. Selle lõi Yukihiro Matsumoto Jaapanis 1995. aastal.

Mis on Rails?

Rails on Ruby keeles kirjutatud arendusraamistik veebirakenduste loomiseks. See loodi Basecampi rakenduse alusena ja avaldati seejärel avatud lähtekoodiga tarkvarana 2004. aastal. Rails pakub palju sisseehitatud standardfunktsioone ja -funktsioone, mis teeb sellest sobiva võimaluse MVP prototüüpide loomiseks ja arendamiseks.

Selle lõi David Heinemeier Hasson, tuntud kui DHH. See on üks mõjukamaid ja populaarsemaid tööriistu veebirakenduste loomiseks. Seda kasutavad mõned lemmiksaidid, nagu Airbnb, Github, Shopify jne.

Miks Rails?

Siin on rööbaste kasutamise plussid ja eelised:

  • Rails on pakendatud Ruby kalliskiviks ja saate seda kasutada mitmesuguste rakenduste loomiseks.
  • See võimaldab teil luua tavalisi veebirakendusi, e-kaubanduse rakendusi, sisuhaldussüsteeme ja palju muud.
  • Rails on täispinu raamistik, mis sisaldab kõike, mida vajate andmebaasipõhise veebirakenduse loomiseks, kasutades mustrit Model-View-Controller.
  • See tähendab, et kõik kihid on loodud töötama sujuvalt koos vähema koodiga. See nõuab vähem koodiridu kui teised raamistikud.

Kuidas Ruby alla laadida ja installida Windows

Installiprotsess sõltub teie operatsioonisüsteemist. Peate läbima Ruby installimise Windows, Mac ja Linux.

Step 1) Laadige alla Rubyinstaller
Lihtsaim viis Ruby installimiseks oma Windows arvuti töötab Ruby Installeri kaudu, mille saate alla laadida aadressilt https://rubyinstaller.org/.

Kõik, mida pead tegema, on käivitada allalaaditud installer.

Step 2) Klõpsake allalaaditud installiprogrammil
Double-klõpsake allalaaditud installiprogrammil rubyinstaller-2.4.1-2-x64.exe.

Step 3) Nõustuge litsentsiga
Valige raadionupp "Nõustun litsentsiga" ja klõpsake nuppu "Järgmine". See peaks viima teid järgmisele allolevale joonisele:

Laadige alla ja installige Ruby Windows

Step 4) Märkige kaks esimest märkeruutu
Ruby skriptide käitamise hõlbustamiseks märkige kaks esimest märkeruutu.

Installimise alustamiseks klõpsake nuppu "Install". Kui installimine on lõppenud, peaksite nägema allolevat joonist.

Laadige alla ja installige Ruby Windows

Step 5) Klõpsake nuppu Lõpeta
Ärge tühjendage märkeruudu suvandit, mis installib MSYS2. Installimise lõpuleviimiseks klõpsake nuppu "Lõpeta" ja kuvatakse alloleval joonisel näidatud käsuviiba aken.

Laadige alla ja installige Ruby Windows

Step 6) Installib MSYS2
See samm installib MSYS2, ehitusplatvormi, millel on paketihaldur, mis hõlbustab pakettide installimist Windows.

Kõigi komponentide installimiseks vajutage sisestusklahvi, kuna need kõik on vajalikud sujuva Ruby on Railsi arenduskeskkonna jaoks, millega töötada Windows.

Laadige alla ja installige Ruby Windows

Rööbaste paigaldamine

Ruby peaks olema installitud eelmisest jaotisest ja nüüd installite Rails. Rails saate installida paketi abil Rööbaste paigaldaja, kuid probleem on selles, et te ei saa vajalike pakettide uusimat versiooni.

Kui teil on juba installitud uusim Ruby ja vajalike RubyGemide ja laienduste komplekt. Kõik, mida peate nüüd tegema, on käivitada käsureal järgmine käsk, et saada Rails oma süsteemi: "gem install rails".

Samuti peate installima Node.js kui teil seda veel pole, sest mõned raamatukogud, millest Rails sõltub, nõuavad a Javascript tööaeg korrektseks töötamiseks. Sõlme saate aadressilt https://nodejs.org.

See on levinum ja eelistatum lähenemine edasiarendamiseks Windows. Rööbaste kogukond kasutab a Windows Linuxi alamsüsteem, mis pakub GNU/Linuxi keskkonda käsurea tööriistade, utiliitide ja levinud rakendustega otse Windows.

Ruby installimine Maci

Teie Macis on Ruby juba eelinstallitud. Eelinstallitud versioon võib aga olla vana ja seetõttu peate installima uue/uusima versiooni.

Lihtsaim viis seda teha on kasutada paketihaldurit, näiteks Homebrew. Võimalik, et peate esmalt installima Homebrew'i, käivitades terminalis alloleva käsu.

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)

See kuvab hoiatuse ja palub teil sisestada parool. Sisestage oma Maci parool (te ei näe tippimise ajal märke). Kui olete parooli sisestamise lõpetanud, vajutage lihtsalt sisestusklahvi. Seejärel käivitage see lihtne Homebrew käsk, et installida Ruby oma Maci.

brew install ruby

Ja käivitage ka see käsk:

echo "export PATH="/usr/local/bin:/usr/local/sbin:$PATH >> ~/.bash_profile

Selle Ruby installi määramiseks teie süsteemis töötamiseks vaike Rubyks, mitte eelinstallitud Rubyks.

Installi õnnestumise kinnitamiseks võite terminalis käivitada järgmised toimingud

ruby --version

see prindib teie installitud Ruby versiooninumbri. Väljund näeb välja umbes selline

ruby 2.6.0p0 (2018-12-25 revision 66547) [x86_64-darwin18]

Ruby installimine Ubuntu (Linux)

Lihtsaim viis Ruby oma seadmesse installimiseks Ubuntu süsteem on apt paketihalduri kaudu. Uusima Ruby installimiseks peate terminalis käivitama järgmised käsud Ubuntu hoidlad.

  • sudo apt värskendus - See värskendab vaikeseadet Ubuntu hoidlad
  • sudo apt install ruby-full – See laadib alla ja installib uusima Ruby

Installi õnnestumise kinnitamiseks võite käivitada järgmise "rubiin - versioon", see prindib teie installitud Ruby versiooni.

Rööbaste paigaldamine Ubuntu (Linux)

Railsi edukaks installimiseks oma Linuxi masinasse peaksite järgima alltoodud samme.

Step 1) Värskendage oma arvuti kalliskivihaldurit käivitades 'gem update – system' terminalis või käsureal.

Step 2) jooks 'gem install rails' Railsi uusima versiooni installimiseks arvutisse.

Step 3) Rails rakenduse gem sõltuvuse hõlpsaks haldamiseks peaksite installima bundler gem'i. Jookse 'gem install bundler' saada.

Rööbaste kaks põhimõtet

Rööpad järgivad põhilisi tarkvara kujundamise põhimõtteid ja julgustavad teid ka neid põhimõtteid kasutama.

Kaks kõige levinumat on:

  • Ära korda ennast (DRY) – see paneb sind kirjutama kokkuvõtlikku, järjepidevat ja hooldatavat koodi.
  • Konventsioon üle konfiguratsiooni – rööpad on eelkonfigureeritud kasutama mõistlikke vaikeseadeid, mis sobivad kõige tavalisema kasutusega. See muudab teie rakenduste arendamise kiireks ja teil on ka vähem koodi hooldamiseks.

Rööpad – projektifailistruktuurid

Kui Rails on nüüd teie süsteemi installitud, saate luua Railsi rakenduse! Selles Ruby on Railsi õpetuses õpime näiteid Ruby on Railsist ja ülesandeloendirakenduse loomist. Käivitage järgmine käsk 'rails new todo_app' oma terminalis rakenduse loomiseks.

See käsk loob kataloogi nimega 'todo_app' praeguses kataloogis Railsi veebirakenduse põhilise kaustastruktuuriga, nagu on näidatud alloleval joonisel:

Rööpad – projektifailistruktuurid

Selles Ruby on Rails näites läbite peamised kataloogid.

app – See kataloog rühmitab erinevaid alamkatalooge kasutajaliidese/paigutuse (vaated ja abistajad), kontrolleri (kontrollerite failid) ja mudelite (äri-/rakendusloogika) jaoks.

rakendus/kontrollerid – See kataloog salvestab kontrollerifailid, mida Rails kasutab kliendi päringute käsitlemiseks.

rakendus/varad - See sisaldab staatilisi faile, mis on vajadus rakenduse esiosa jaoks, mis on rühmitatud nende tüübi alusel kaustadesse - JavaScript failid, pildid ja laaditabelid.

rakendus/abilised – See alamkataloog sisaldab abifunktsioone, mis muudavad teie rakenduse mudeli, vaate ja kontrolleri loogika keskendunuks, väikeseks ja segamatuks.

rakendus/mudelid – See sisaldab faile

mis modelleerib teie rakenduse andmebaasi. Mudelklassid muudavad andmebaasiga töötamise väga lihtsaks.

rakendus/vaated – Need hoiatavad malli-/küljendusfailid, millega teie rakenduse kasutaja suhtleb. Mallid on HTML-i ja andmebaasi andmete kombinatsioon.

prügikast – See sisaldab Rails-skripte, mis käivitavad teie rakenduse. See võib sisaldada ka muid skripte, mida kasutate rakenduse seadistamiseks ja täiendamiseks.

Konfiguratsioon – See sisaldab konfiguratsioonifaile - andmebaas.yml, keskkond.rb, marsruudid.rbjne, mida teie rakendus peab töötama.

DB – See kataloog sisaldab faile/skripte, mida kasutatakse teie rakenduste andmebaasi haldamiseks.

lib – See kataloog sisaldab teie rakenduse jaoks laiendatud moodulit.

logi – See sisaldab logifaile – server.log, development.log, test.log ja production.logjne, mida kasutatakse teie rakenduse silumiseks või jälgimiseks.

publik - See kataloog sisaldab staatilisi faile ja kompileeritud varasid, näiteks HTML-faile, Javascript failid, pildid ja laaditabelid.

test - See kataloog sisaldab testfaile, mille kirjutate oma rakenduse funktsionaalsuse testimiseks.

tmp – See kataloog sisaldab ajutisi faile, nagu vahemälu ja pid-failid.

müüja - See kataloog sisaldab kolmandate osapoolte teeke.

Gemfile – See fail määrab, millised on teie põhinõuded teie veebirakenduse käitamiseks. Saate rühmitada kalliskive arendus-, katse- või tootmistüüpi ja Rails teab, millal iga kalliskivi lisada.

Gemfile.lock – Erinevalt Gemfile'ist, mis loetleb selgelt teie rakenduses soovitud kalliskivid, sisaldab Gemfile.lock lisaks muid kalliskive, millest sõltuvad Gemfile'is loetletud kalliskivid, mis seejärel automaatselt installitakse sõltuvuste rahuldamiseks.

Readme.md – Kasutate seda faili oma rakenduse oluliste üksikasjade jagamiseks, nagu rakenduse tegevus, rakenduse installimine ja käitamine.

rakefile – See fail sisaldab erinevaid rake ülesannete määratlusi, mis aitavad automatiseerida teie rakenduse igapäevaseid haldusülesandeid.

config.ru – See on Racki konfiguratsioonifail, mis pakub veebiserverile rakenduse käivitamiseks liidest.

Muutke kataloogi 'todo_app' kataloog Rööpad on loodud ja käivitatud 'rööbaste server' rakenduse käivitamiseks. Tüüp localhost: 3000 Kui kõik läks hästi, peaksite oma veebibrauseri aadressiribal nägema allolevat joonist.

Rööpad – projektifailistruktuurid

See on teie rakenduse vaikimisi avaleht ja te muudate seda selle Ruby on Rails õpetuse hilisemas jaotises. Serveri saab peatada vajutades 'Ctrl-C'.

Rööpad – genereerige käske

Käsk Rails genereerida kasutab malle, et luua teie rakenduses palju kasulikke asju. Nende generaatorite abil saate palju aega säästa.

See aitab, kirjutades standardkoodi, mis on teie veebirakenduse töötamiseks vajalik. Sa võid joosta 'rööpad genereerivad' käsureal või terminalis, et näha saadaolevate generaatorite loendit, nagu allpool näidatud:

Rööpad – genereerige käske

Saab ka joosta "rööpad genereerivad käsu" et näha käsu kirjeldust. See pakub mugavaid valikuid, mida saab käivitada käsu ja kasutusnäite abil. Allolev joonis näitab jooksmise väljundit'rööpad genereerivad kontrolleri':

Rööpad – genereerige käske

Kasutate rööbaste genereerimise käsku, et luua loodava ülesannete loendi rakenduse jaoks automaatselt mudel, vaade ja kontroller. Jookse' rööpad genereerivad karkassi todo_list title:string description: text' terminalis (kontrollige, kas olete ikka veel kataloogis todo_app).

See loob TodoLists tabeli jaoks täieliku CRUD-i (loomine, lugemine, värskendamine ja kustutamine) veebiliidese.

Veel üks kasulik käsk, mida teada saada, on 'rööpad hävitavad' see pöörab ükskõik mida "rööpad tekitavad..." teeb.

Rööpad – marsruutimine

Rails marsruutimise süsteem, rööbaste ruuter, käsitleb kõiki teie veebirakendusse saabuvaid päringuid. See teeb seda nii, et uurib sissetulevate päringute URL-e ja seostab seejärel iga päringu selle haldamise eest vastutava kontrolleri toiminguga, kasutades marsruutide failis määratud spetsiaalset süntaksit (config/routes.rb).

Marsruutide fail aitab juhtida teie veebirakenduse kõiki URL-i aspekte. Rööpad kasutavad vaikimisi REST-i arhitektuuristiilil põhinevat RESTful-kujundust, mis pakub HTTP-verbide ja kontrolleri toimingute taotluste (URL-ide) vastendamist.

Marsruudifail loodi jooksmisel "rööpad uued" selle õpetuse varasemas osas. Jätkates ehitatava Todo rakendusega, käivitage järgmine'rails db:migrate' (saate varsti teada, mida see teeb)

Veenduge oma käsureal, et oleksite endiselt rakenduse juurtes (kataloogis todo_app).

Seejärel käivitage server uuesti rakendusega 'rööbaste server'. Tüüp http://localhost:3000/todo_lists/ brauseris ja vajutage sisestusklahvi. Peaksite veebilehe tagasi hankima, nagu on näidatud alloleval Ruby on Railsi näite joonisel:

Rööpad – marsruutimine

See on ülesandeloendite vaade, mille genereeris karkassi käsk ja mida juhib TodoListsControlleri indeksi toiming.

Jätkake ja lisage ülesannete loend, klõpsates lehel "Uute ülesannete loend", peaksite saama lehe, nagu allpool näidatud:

Rööpad – marsruutimine

Pange tähele, et URL on muudetud http://localhost:3000/todo_lists/new. See on leht uue ülesannete loendi loomiseks ja seda juhib TodoListsControlleri uus meetod/toiming.

Sisestage vormile oma ülesannete loendi pealkiri ja kirjeldus ning klõpsake nuppu Loo ülesannete loend, URL peaks muutuma järgmiseks http://localhost:3000/todo_lists/1, mis on näidatud alloleval Ruby on Railsi koodinäite joonisel:

Rööpad – marsruutimine

See on ülesannete loendi näitamise leht ja seda juhib TodoListsControlleri näitamise meetod/toiming. Kui lähete tagasi http://localhost:3000/todo_lists/, peaksite nüüd nägema allolevat joonist koos uue ülesandeloendiga:

Rööpad – marsruutimine

Rails suutis kaardistada erinevad päringud (URL-id) vastava TodoListsControlleri toiminguga, kasutades marsruudi määratlust failis config/routes.rb.

Kui vaatate seda faili, näete ühte rida 'ressursid: todo_lists', on Rails vaikeviis rahulike marsruutide kirjutamiseks. See üks rida loob seitse marsruuti, mis on kõik kaardistatud TodoLists kontrolleriga.

Kokkuleppeliselt kaardistatakse iga kontrolleri toiming ka konkreetse CRUD (loomine, lugemine, värskendamine ja kustutamine) toiminguga andmebaasis.

Võite käivitada "rake marsruudid" käsureal, et näha oma rakenduses saadaolevaid erinevaid marsruute. Allolev joonis näitab jooksmise väljundit "rööbasteed" oma käsureal/terminalis.

Rööpad – marsruutimine

Rööpad – vaated

Vaatekiht on üks MVC paradigma komponentidest ja vastutab HTML-vastuse genereerimise eest iga teie rakenduse päringu jaoks. Rails kasutavad vaikimisi ERB-d (Embedded Ruby), mis on Ruby jaoks võimas mallisüsteem.

ERB muudab mallide kirjutamise lihtsaks ja hooldatavaks, kombineerides lihtteksti Ruby koodiga muutujate asendamiseks ja voo juhtimiseks. ERB mallil on laiend html, erb või .erb.

Enamasti kasutate ainult kahe sildimarkeri kombinatsiooni, millest igaüks põhjustab manustatud koodi töötlemise ja käsitlemise teatud viisil.

Võrdlusmärgiga silt '<%= %>' näitab, et manustatud kood on avaldis ja et koodi tulemus tuleks malli renderdamisel asendada renderdajaga.

Teine silt ilma võrdusmärgita '<% %>' näitab renderdajale, et malli renderdamisel ei tohiks koodi tulemust asendada/printida.

Igal teie Rails-rakenduse kontrolleril on vastav alamkataloog rakendus/vaated, ja igal kontrolleri toimingul/meetodil on selles kataloogis vastav html- ja erb-fail.

Vaadake ehitatava ülesanderakenduse rakendust/vaateid. Leiate alamkataloogi nimega 'todo_lists' selle alamkataloogi sees .html.erb failid, mille nimed vastavad toimingutele/meetoditele TodoLists kontroller.

Rööpad – ActiveRecord, Active Record Pattern ja ORM

ActiveRecord on Active Record mustri Ruby teostus, mis on lihtne muster, kus klass tähistab tabelit ja klassi eksemplar esindab selle klassi rida.

ActiveRecordi nimetatakse rahvapäraselt ORM-iks (Object Relational Mapping) – tehnikaks, mis võimaldab hallata oma andmebaasi keeles, mida tunnete kõige paremini. See on andmebaasi agnostiline, seega saate hõlpsalt andmebaaside vahel vahetada (näiteks SQLite, MySQL, PostgreSQL, SQL Server, Oraclejne). See komplekt sobib rohkem teie rakendusenõuetele sama koodi / loogikaga.

Seega, kui soovite saada massiivi, mis sisaldab kõigi teie rakenduse ülesannete loendeid, siis selle asemel, et andmebaasiga ühenduse loomiseks koodi kirjutada, tehke mingi SQL SELECT päring ja teisendage need tulemused massiivi.

Selleks peate lihtsalt sisestama "TodoList.all". ja Active Record annab teile massiivi, mis on täidetud TodoListi objektidega, millega saate mängida, nagu soovite.

Kõik, mida pead tegema, on seadistada õige konfiguratsioon config/database.ymlja Active Record selgitab välja kõik erinevused erinevate andmebaasisüsteemide vahel. Nii et kui vahetate ühelt teisele, ei pea te sellele mõtlema.

Keskendute oma rakenduse koodi kirjutamisele ja Active Record mõtleb teie andmebaasiga ühendamise madala taseme üksikasjadele. Active Record kasutab mudelite ja andmebaasitabelite vahelise vastendamise loomiseks nimetamise tavasid.

Rööpad teevad teie mudeliklasside nimed mitmuse, et leida vastav andmebaasitabel. Seega loob ActiveRecord klassi TodoList jaoks andmebaasitabeli nimega TodoLists.

Rööpad – migratsioonid

Rööbaste migratsioon on lihtsalt skript, mida kasutate rakenduste andmebaasi redigeerimiseks. Seda kasutatakse teie andmebaasi seadistamiseks või muutmiseks ja see väldib selleks SQL-koodi käsitsi kirjutamist.

See kasutab Rubyt andmebaasi skeemi muudatuste määratlemiseks ja võimaldab andmebaasi sünkroonimiseks kasutada versioonikontrolli.

Rööbaste migratsioonid kasutavad Ruby domeenispetsiifilist keelt (DSL). See toimib abstraktsioonina ja võimaldab kasutada või muuta teie andmebaasi mootorit vastavalt teie vajadustele.

Neid saab jagada kõigi rakendusega töötavate inimestega ja andmebaasis tehtud muudatuste tühistamiseks ka tagasi kerida. See on kõrge turvamehhanism, kuna te ei pea muretsema oma andmebaasi püsiva kahjustamise pärast.

Rööpad – ActiveRecordi ühendused

Ühendust kahe ActiveRecordi mudeli vahel nimetatakse seoseks. Seos muudab koodi erinevate kirjetega toimingute tegemise palju lihtsamaks. Selle võib jagada nelja kategooriasse: -

Üks kuni üks: – See näitab, et kirje sisaldab täpselt ühte teise mudeli eksemplari. Hea näide on kasutajaprofiil. Kasutajal on ainult üks profiil. See kasutab on _üks märksõna.

Üks paljudele: – See on kõige levinum seos ja see näitab, et ühel mudelil on null või rohkem teise mudeli eksemplare. Teie kasutus on _palju märksõna selle seose tähistamiseks.

Paljudest paljudeni: – See seos on veidi keerulisem ja ActiveRecord pakub selle käsitlemiseks kahte võimalust. Kasutades on_ja_kuulub_paljudele ja has_many, mis annab teile juurdepääsu seosele, mis on määratletud eraldi tabelis.

Polümorfne Üks paljudele:- See on teile Railsis saadaval olev täiustatud ühendus. Saate seda kasutada mudeli määratlemiseks, mis võib kuuluda ühe seose paljudele erinevatele mudelitele.

Rööpad – ActiveRecordi kinnitused

Valideerimine aitab tagada, et teil on õiged andmed, sest valede andmetega töötamine on kohutav asi ja võib teile kulutada raha ja äri.

Valideerimine annab teie rakendusele ka täiendava turvakihi, et pahatahtlikud kasutajad ei pääseks teie andmebaasis olevale teabele juurde. Rails pakub teile ActiveRecordis kena valideerimisabiliste API-d, et teie andmebaas oleks puhas, turvaline ja vigadeta.

ActiveRecordi valideerimised käitatakse mudeliobjektidel enne andmebaasi salvestamist, muutes need usaldusväärsemaks ja ühtlasi parimaks praktikaks, mida rakenduse koostamisel järgida.

Järgmised ActiveRecordi meetodid kutsuvad esile valideerimise, kui neid kasutatakse või neid kutsutakse mudeliobjektidele – loo, loo!, salvesta, salvesta!, värskenda ja värskenda!. Need, kellel on pauk (loo!, salvesta! ja värskendage!) teha erand, kui kirje on kehtetu, samas kui tothen'tt't't.

Kõige tavalisemad teie käsutuses olevad ActiveRecordi valideerimisabilised on:

Kinnitamine:– See valideerimisabimees on kasulik kahe sama kirjega välja valideerimiseks. nt parool ja parooli kinnitamine, seda kasutatakse koos kohaloleku kontrollimise abistajaga.

Kohalolek:– See kontrollib, et väli poleks tühi.

unikaalsus: tagab välja unikaalse väärtuse, nt kasutajanimi

Pikkus:- Välja tähemärgi pikkuse piirangu jõustamiseks

Saate luua ka kohandatud valideerimise, kasutades valideerimismeetodit ja edastades sellele kohandatud valideerimismeetodi nime.

Saate mudelit kontrollida viga vastu, et teada saada, miks valideerimine. Loodetavasti on teil ideid, kuidas muuta oma rakendus piiratumaks ja turvalisemaks, et lubada oma andmebaasi ainult turvalised andmed.

Rööpad – ActionController

Rails-kontroller on teie veebirakenduse keskpunkt. See hõlbustab ja koordineerib suhtlust kasutaja, mudelite ja vaadete vahel.

Teie kontrolleriklassid pärivad ApplicationControllerilt, mis sisaldab koodi, mida saab käitada kõigis teistes kontrollerites, ja see pärib klassist ActionController.

Kontroller pakub teie rakendusele järgmist.

  • See suunab välised päringud sisemiste toiminguteni
  • See suudab vahemällu salvestada, suurendades teie rakenduse jõudlust
  • See haldab abimeetodeid, mis laiendavad vaatemallide võimalusi. Samuti haldab see kasutajaseansse, pakkudes neile teie rakenduse kasutamise sujuvat kogemust.

Rööpad – konfiguratsioonid

Saate konfigureerida erinevaid komponente, nagu lähtestajad, varad, generaatorid, vahevara jne. Kasutades oma Rails'i rakenduse lähtestajaid ja konfiguratsioonifaile konfiguratsioonikataloogis. Failid nagu config/application.rb, config/environments/development.rb ja config/environments/test.rb jne. Samuti saate lasta oma rakenduse jaoks konfigureerida kohandatud sätteid.

Rööpad – silumine

Rakendust välja töötades tuleb aeg, mil peate koodi siluma. Rööpad teevad selle byebugi kalliskivi abil lihtsaks. Silumisseansi alustamiseks lisate "byebeg" märksõna ükskõik kuhu oma rakenduse koodis.

See peatab ajutiselt täitmise sel hetkel. Byebugi pärl annab teile kasutamiseks mitu käsku. Kõige kasulikumad on järgmised:

  • järgmine: käsk, mis võimaldab teil minna järgmisele koodireale, jättes vahele kõik praeguse rea käivitamisel välja kutsutud meetodid.
  • samm: see sarnaneb käsuga 'next', kuid paneb sind astuma igasse kutsutavasse.
  • murdma: see peatab koodi täitmise.
  • jätkama jätkab täitmiskoodi.

Saadaval on ka teisi silumiselemente, nagu 'pry', ja need kõik pakuvad sarnaseid funktsioone, kuid veidi erinevat süntaksit. Silumiskivisid ei tohiks tootmises kasutada, kuna see ohustab teie rakendust ja kahjustab rakenduse kasutajaid.

Seal on logifailid, mida saate tootmises vigade suhtes kontrollida ja neid käsitleda. Samuti peaksite rakenduse arendamisel järgima TDD (testipõhise arenduse) lähenemisviisi, et tagada enne tootmisse juurutamist kõik hästi.

kokkuvõte

  • Ruby on puhas objektorienteeritud programmeerimiskeel
  • Rubyl on elegantne süntaks, mida on lihtne lugeda ja kirjutada.
  • Rails on Ruby keeles kirjutatud arendusraamistik veebirakenduste loomiseks
  • Installiprotsess sõltub teie operatsioonisüsteemist.
  • Rails on pakendatud Ruby kalliskiviks ja saate seda kasutada mitmesuguste rakenduste loomiseks.
  • Selles õpetuses loote ülesannete loendi rakenduse, käivitage rakenduse loomiseks oma R-terminalis käsk followincomm'n'n' 'rails netoda'p'p'p'.
  • Käsk Rails genereerida kasutab malle, et luua teie rakenduses palju kasulikke asju.
  • Rails marsruutimise süsteem, rööbaste ruuter aitab teil käsitleda kõiki teie veebirakendusse saabuvaid päringuid.
  • Vaatekiht on üks MVC paradigma komponentidest ja vastutab HTML-vastuse genereerimise eest iga teie rakenduse päringu jaoks.
  • ActiveRecord on Active Record mustri Ruby rakendus.
  • Rööbaste migratsioon on lihtsalt skript, mida kasutate rakenduste andmebaasi redigeerimiseks.
  • Ühendust kahe ActiveRecordi mudeli vahel nimetatakse seoseks.
  • Valideerimine aitab tagada, et teil on õiged andmed, sest valede andmetega töötamine on kohutav asi ja võib teile kulutada raha ja äri.
  • Rails-kontroller aitab teil hõlbustada ja koordineerida suhtlust kasutaja, mudelite ja vaadete vahel.
  • Rail aitab teil konfigureerida erinevaid komponente, nagu lähtestajad, varad, generaatorid, vahevara jne.