Ruby on Rails
Mureakuha
Ruby on Rails, yleensä lyhyesti Rails, on Ruby-ohjelmointikieleen pohjautuva avoimen lähdekoodin ohjelmistokehys (framework).
Rails pohjautuu Model-View-Controller-arkkitehtuuriin, ja on tarkoitettu lähinnä WWW-pohjaisten sovellusten luomiseen.
Muista WWW-kehyksistä Rails erottuu lähinnä tarvittavan ohjelmakoodin pienen määrän sekä konfigurointitarpeen puutteen osilta. Malli, eli ohjelmointikielen näkemys tietokannan tauluista, rakennetaan lähes kokonaan automaattisesti: Ohjelmoija luo tyhjän luokan, ja Rails löytää automaattisesti samannimisen taulun tietokannasta ja päättelee mitä sarakkeita siinä on. Näkymä, eli HTML jonka käyttäjä näkee, luodaan suoraan HTML-paloista. Ohjain, eli luokka, joka vastaa käyttäjän antamiin komentoihin, määritellään luokkana, jonka metodiksi koodi kirjoitetaan. Rails tukee myös tyypillisten tietueiden luonnin, lukemisen, päivittämisen ja tuhoamisen mahdollistavien metodien automaattista määrittelyä.
Rails tukee myös muita toimintoja, kuten asynkronisia JavaScript-toimintoja (ns. AJAX-toiminnot), sähköpostin lähettämistä ja vastaanottamista, sekä Web Services-toimintoja.
Rails toimii lähes kaikissa käyttöjärjestelmissä missä Rubykin. Web-palvelimeksi sopii niin Rubyn mukana tuleva pieni WebRICK-palvelin kuin myös Apache tai Lighttpd. Tietokannaksi sopii myös moni - niin MySQL, PostgreSQL kuin SQLite ovat tuettuina, kuten myös moni kaupallisista palvelimista, kuten Oracle ja DB2.
Sisällysluettelo |
Railsin asennus
Olettaen, että olet jo asentanut Rubyn sekä RubyGemsin, voit asentaa Railsin seuraavalla komennolla
gem install rails --include-dependencies
tai sama lyhemmin
gem i rails -y
Ohjelman luonti
Railssissa luodaan uusi ohjelma käyttäen komentoa rails
rails ohjelman_nimi
Tämä luo nykyisen hakemiston alle uuden hakemiston ohjelman_nimi, joka sisältää uuden Rails-ohjelman tiedostot. Tämän jälkeen säädetään MySQL (tai jonkin muun railsin tukeman tietokannan) asetukset kuntoon. Oletetaan, että olet jo asentanut MySQL-tietokannan (jota tässä esimerkissä käytetään), joten avaa tiedosto ohjelman_nimi/config/database.yml
Sisällön pitäisi olla jotakuinkin seuraavan näköinen:
# MySQL (default setup). Versions 4.1 and 5.0 are recommended. # # Install the MySQL driver: # gem install mysql # On MacOS X: # gem install mysql -- --include=/usr/local/lib # On Windows: # There is no gem for Windows. Install mysql.so from RubyForApache. # http://rubyforge.org/projects/rubyforapache # # And be sure to use new-style password hashing: # http://dev.mysql.com/doc/refman/5.0/en/old-client.html development: adapter: mysql database: rails_development username: root password: host: localhost # Warning: The database defined as 'test' will be erased and # re-generated from your development database when you run 'rake'. # Do not set this db to the same as development or production. test: adapter: mysql database: rails_test username: root password: host: localhost production: adapter: mysql database: rails_production username: root password: host: localhost
Huom! Valitsemasi tietokannat pitää olla olemassa.
Aseta vähintään development kohta oikein. Älä laita test-kohtaan samaa tietokantaa kuin development tai production kohdissa on, koska muuten kannan sisältö katoaa.
Controllerin luonti
Kontrolleri luodaan komennolla: (jos olet kyseisessä hakemistossa, missä on ohjelmakin)
./script/generate controller MyTest
Avaa tiedosto app/controllers/my_test_controller.rb
Sisältö pitäisi näyttää tältä:
class MyTestController < ApplicationController end
Lisää nuiden kahden väliin teksti:
def index
render_text "Hello world!"
end
Serverin käynnistys
Serverin käynnistys onnistuu komennolla:
./script/server
Ja sitten selaat selaimellasi osoitteeseen: MyTest Ja ohjelman pitäisi tulostaa "Hello world!"
Linkkejä
- Ruby on Railsin kotisivu
- Suomalaiset Ruby on Rails sivut
- www.raiteilla.org - Suomalainen Ruby on Rails keskustelupalsta
| Tämä artikkeli on alun perin kopioitu Wikipediasta. Sen sisältö julkaistaan GDFL-lisenssin alaisena: |
Kopio lisenssistä (englanniksi) löytyy täältä.
