Bu sefer www.railstutorial.org adresinden.
Başlıyoruz, önce Cloud9 adresinde hesabımız yoksa açıyoruz. Yeni bir workspace oluşturup adını "rails-tutorial" koyup proje sembolü seçeneklerinden "Rails Tutorial" ikonu seçiyoruz (RubyOnRails değil).
Sırada Rails kurulumu var, Start editing düğmesini tıkladıktan sonra aşağıda açılan terminale:
Gemfile içinde uygulamamızda kullanılacak gemlerin bir listesi var. Burada değişik versiyonlarda gemlerden korunmak için otomatik olarak üretilen gem listesini aşağıdaki ile değiştirerek versiyonları sabitleyelim:
Şimdi app/controllers/application_controller.rb dosyasını açalım ve içine "hello" metodunu ekleyelim:
Başlıyoruz, önce Cloud9 adresinde hesabımız yoksa açıyoruz. Yeni bir workspace oluşturup adını "rails-tutorial" koyup proje sembolü seçeneklerinden "Rails Tutorial" ikonu seçiyoruz (RubyOnRails değil).
Sırada Rails kurulumu var, Start editing düğmesini tıkladıktan sonra aşağıda açılan terminale:
$ gem install rails -v 4.2.0
satırını giriyoruz. Gereken Ruby gemler yüklendikten sonra tekrar komut satırına geri döner. Yeni bir uygulama üretmek için "rails new" komutunu kullanacağız:Bir süre sabırla bekledikten sonra uygulamamızın tüm gereken dosyaları kurulur ve gereken gemler "bundle install" ile otomatik olarak kurulur. Şöyle bir dosya yapısına bakarsak:$ rails _4.2.0_ new hello_app create create README.rdoc create Rakefile create config.ru create .gitignore create Gemfile create app create app/assets/javascripts/application.js create app/assets/stylesheets/application.css create app/controllers/application_controller.rb . . . create test/test_helper.rb create tmp/cache create tmp/cache/assets create vendor/assets/javascripts create vendor/assets/javascripts/.keep create vendor/assets/stylesheets create vendor/assets/stylesheets/.keep run bundle install Fetching gem metadata from https://rubygems.org/.......... Fetching additional metadata from https://rubygems.org/.. Resolving dependencies... Using rake 10.3.2 Using i18n 0.6.11 . . . Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed. run bundle exec spring binstub --all * bin/rake: spring inserted * bin/rails: spring inserted
Dosya/Klasör | Amacı |
app/ | Ana uygulama (app) kodu, model, view, controller, ve helper dosyalarını içerir |
app/assets | Uygulamanın değerleri, CSS dosyaları, JavaScript dosyaları, ve resimler |
bin/ | Binary işlem dosyaları |
config/ | Uygulama konfigürasyonu |
db/ | Veritabanı dosyaları |
doc/ | Uygulama için dökümentasyon |
lib/ | Kütüphane modülleri |
lib/assets | Kütüphane değerler CSS, JavaScript dosyaları ve resimler gibi |
log/ | Uygulama log kayıtları |
public/ | Erişime açık veriler (web tarayıcıların erişebileceği dosyalar), mesela error sayfaları |
bin/rails | Kodu üreten, konsol oturumu açan ya da yerel bir server açan program |
test/ | Uygulama testleri |
tmp/ | Geçici dosyalar |
vendor/ | Plugin ya da gem gibi üçüncü parti dosyalar |
vendor/assets | Üçüncü parti değerler, CSS, JavaScript dosyaları, ve resimler |
README.rdoc | Uygulamanın kısa bir açıklaması |
Rakefile | Rake komutuyla kullanılabilen utility işlemler |
Gemfile | Bu uygulamada kullanılacak Gem listesi |
Gemfile.lock | A list of gems used to ensure that all copies of the app use the same gem versions |
config.ru | Rack middleware için konfigürasyon dosyası |
.gitignore | Git tarafından dikkate alınmayacak dosyalar paterni |
Gemfile içinde uygulamamızda kullanılacak gemlerin bir listesi var. Burada değişik versiyonlarda gemlerden korunmak için otomatik olarak üretilen gem listesini aşağıdaki ile değiştirerek versiyonları sabitleyelim:
Gemfile dosyasındaki bu değişiklikleri yaptıktan sonra dosyayı kaydedelim ve konsolda :source 'https://rubygems.org' gem 'rails', '4.2.0' gem 'sass-rails', '5.0.1' gem 'uglifier', '2.5.3' gem 'coffee-rails', '4.1.0' gem 'jquery-rails', '4.0.3' gem 'turbolinks', '2.3.0' gem 'jbuilder', '2.2.3' gem 'sdoc', '0.4.0', group: :doc group :development, :test do gem 'sqlite3', '1.3.9' gem 'byebug', '3.4.0' gem 'web-console', '2.0.0.beta3' gem 'spring', '1.1.3' end
$ bundle install
komutunu girip bu listedeki gemlerin yüklenmesini sağlayalım. Hadi bakalım server'ımızı çalıştıralım:
$ rails server
Bunu yeni bir terminal tab'ı açıp yaparsak diğer terminalde komut çalıştırmaya devam edebiliriz. Kendi bilgisayarınızda server çalıştırınca http://localhost:3000/ adresinde uygulamayı görüyorsunuz. Ama C9 editöründe uygulama geliştirirken
$ rails server -b $IP -p $PORT
komutu girilir ve "window - share..." menüsünde "Application" yanındaki linke tıklayarak uygulamanızın çalışan sayfasını görebiliriz. “About your application’s environment” linkini tıklayıp uygulamanızın kullandığı toollar hakkında kısa bilgi sahibi olabilirsiniz.Şimdi app/controllers/application_controller.rb dosyasını açalım ve içine "hello" metodunu ekleyelim:
uygulamamızın root dosyasının bu metodu çağırması içinse config/routes.rb dosyasında şu ilaveyi yapalım:class ApplicationController < ActionController::Base # Prevent CSRF attacks by raising an exception. # For APIs, you may want to use :null_session instead. protect_from_forgery with: :exception def hello render text: "hello, world!" end end
Dosyaları kaydettikten sonra uygulamamızı izlediğimiz tarayıcı sayfasını yenileyince "hello, world!" yazısı karşımıza çıkacaktır.Rails.application.routes.draw do . . . # You can have the root of your site routed with "root" root 'application#hello' . . . end
Hiç yorum yok:
Yorum Gönder