Ruby on Rails

Дусал нэвтэрхий толь-с

Ruby on Rails нь Ruby хэл дээр суурилсан web framework юм. Ихэнхдээ Ruby on Rails-ийг RoR эвсэл зүгээр л Rails гэж дуудах нь элбэг. RoR-ыг ашиглаад та маш амархан, авсаархан вэб програм бичиж болно.


Ruby on Rails танилцуулах нь

Ruby on Rails анхны хувилбараа гарсанаас хойш нэг их удаагүй байгаа ч аль хэдийн гэр бүлийн гишүүн (хөгжүүлэгчдийн гэр бүлийн гишүүн л дээ) болсон байна. Энэ хугацаанд дэлхийн зуу зуун, мянга мянган хөгжүүлэгчид энэ фрэймворкийг өөхөөрдөж, үрчилж авсан байна. Ruby on Rails талаар судалж түүхийн талаар мэдэж авцгаая. Юуны түрүүнд Ruby on Rails гэж яг юу вэ? Товчоор Ruby on Rails (Rails гэж товчилдог) бол Ruby хэлээр бичигдсэн вэб аппликэйшион фрэймворк багц цуглуулга юм.

  • Вэб програм бол сүлжээгээр вэб броузер ашиглан ажилладаг програм хангамж юм. Ихэнх тохиолдолд сүлжээ бол Интернэт, гэхдээ интранэт байж болно.
  • Фрэймворкийг вэб програмын гол суурь гэж үзэж болно. Хөгжүүлэгчид бүрэн ажиллагаатай програм бүтээхэд анхаарал хандуулах боломжийг олгон доод түвшиний деталь зүйлс, байнга давтагддаг уйтгартай кодыг шийддэг.

Фрэймворк хөгжүүлэгчид вэб програмд нийтлэг ашиглагдах функц агуулсан байдаг үүнд:

  • ** Өгөгдлийн сан (MySQL, Oracle, DB2, эсвэл өөр ямар нэг)
    • templating (програмд дахин ашиглагдах код)
    • user session зохицуулалт
    • "цэвэр" URL үүсгэх

Фрэймворк бол програмын ямар нэг хэсгийн архитекурыг тодорхойлно. Энэ нь аль файлаа аль хавтаст хийх вэ гэхээс залхуурдаг бидэн шиг хүмүүст их тус болдог. Энгийнээр бол фрэймворк нь сайн зохиомжилсон ганцхан танд зориулагдсан програм юм.


Системийн шаардлага

Ажиллах төдийхөнд буюу хамгийн багадаа юу юу хэрэгтэй вэ?

  • Apache (өө худлаа үнэн вэб сервер л хэрэгтэй, тэр нь WEBrick эсхүл Mongrel-рүү нь холбох юм)
  • MySQL (үгүй бол SQLite гэнэ үү нэг юм ирж байсан, зөөврийн бааз бололтой, MySQL байсан нь дээр байх өө)
  • Ruby
  • Gem


Үрслэх

  • Юуны түрүүнд таны тооцоолуур дээр Ruby суусах байх шаардлагатай. Хэрхэн суулгахыг эндээс харна уу.
  • http://rubyonrails.org/download хаягаас Rails-ийг татаж авна.
  • Хэрвээ та Debian/Ubuntu Linux-тай бол
$ sudo apt-get install rubygems1.9.1
$ gem install rails
$ sudo apt-get install rails

Ингээд л суугдаад үрслэгдчихнэ.

Харин Rails 3 буюу хамгийн сүүлийн хувилбарыг суулгахыг хүсвэл доорх зааврыг дагна уу

Үүнийг Ubuntu 10.04.2 дээр амжилттай тэстлэсэн.

  • Шаардлагатай багцуудыг суулгах
# apt-get install curl git-core build-essential zlib1g-dev libssl-dev libreadline5-dev



  • RVM (Ruby Version Manager) суулгах
# bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )

үйлдлийн систем дээр тохируулах

 # echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
 # source ~/.bash_profile

шалгах

# rvm notes



  • Rails 3-т зохих хөрс буюу Ruby 1.9.2 суулгах
# rvm install 1.9.2

үйлдлийн систем дээр заяагдмал болгох

# rvm --default ruby-1.9.2

шалгах

# ruby -v



  • Rails 3-ийг (ер нь ruby дээрх богцуудын) суулгах богцийн удирдлага болох gem суулгах
# apt-get install rubygem1.9



  • Rails 3-ийг суулгах (sudo-гүй)
# gem install rails

Application суулгах ба түүнийгээ тордох

$ rails YOUR_APP_NAME

тушаалын үр дүнд YOUR_APP_NAME-ийн оронд бичсэн замд тухайн хавтас үүсч дотор нь Rails-ийн хэрэгцээтэй файл, хавтсууд хуулагдах болно.

  • Хэрвээ MySQL бааз дээр үүсгэх гэж байгаа бол анхнаас нь
$ rails --database=mysql YOUR_APP_NAME

гэчихсэн нь дээр. Дараа нь config/database.yml файл дотор багахан өөрчлөлт оруулахад л хангалттай.

$ cd YOUR_APP_NAME
$ ruby script/server

ингээд localhost:3000 хаягаар толилуураасаа ороод үздэ. Хэрвээ та амжилттай суулгасан бол амжилттай суулгасан гэсэн үг :P Заза тоглосон юм, хэрвээ суулгалт амжилттай болсон бол localhost-ын 3000 порт дээр буюу http://localhost:3000/ хаяг дээр RoR чинь гарч ирэх болно. Ruby процессийн ажиллагааг зогсоовол (^+c) сайт ажиллахгүй.

Rails editor for Vim - http://www.vim.org/scripts/script.php?script_id=1567

  • HTML-ийн бүрэлдэхүүн тэмдэгтүүдийг (жишээ нь < болон > тэмдэгтүүд HTML болж зовоогоод байдаг) дараах байдлаар бичсэнээр HTML код буюу тэр тэмдэгтүүд тэр чигээрээ гарах болно.
<%= h("Ann & Bill <frazers@isp.email>" ) %>

дээрх код дараах үр дүнг HTML-рүү өгнө

Ann & Bill <frazers@isp.email>
  • Rails дээрээ Application үүсгэхийн тулд эхлээд controller үүсгэнэ
$ ruby script/generate controller NAME

үүний дараа app/controllers/NAME_controller.rb файл үүсэх ба мөн app/views/NAME гэсэн хавтас үүсэх болно. NAME_controller.rb дотор ruby кодоо бичих ба ямар функц агуулж байгаагаас шалтгаалан app/views/NAME хавтсан дотор [Функцийн нэр].html.erb файл үүсгэн тухайн функцийн утгуудыг html-рүү зурах тэмплэйт хийж өгнө. Хандахдаа

http://hostname:3000/NAME/DEFNAME

гэж хандахад NAME бол контроллерийн нэр, DEFNAME бол контроллер дотор байгаа функцийн нэр болно.

  • erb хуудсуудын дунд шилжихдээ тухайн erb дотроо
<%= link_to "click", :action => "NAME" %>