如果手邊的電腦是Leopard或是Snow Leopard就直接打開Terminal 打上
cd ~/Sites
rails getTest
之後會看到下方的message
create
create app/controllers
create app/helpers
create app/models
create app/views/layouts
create config/environments
create config/initializers
create config/locales
create db
create doc
create lib
create lib/tasks
create log
create public/images
create public/javascripts
create public/stylesheets
[以下省略]
ruby on rail就會新增這麼多的資料夾在getTest底下
重點當然就是controllers, models, views啦
這篇的入門很簡單,就是當使用者打上
http://127.0.0.1?name=michael
的時候ruby server會回傳michael這個值給瀏覽器
這個就是name=michael就是GET Method用的的參數(name)和參數值(michael)
這麼簡單的例子,我們只需要新增controller就可以了
在Terminal getTest/ 底下打上
script/generate controller EchoTest
會跑出底下的訊息
exists app/controllers/
exists app/helpers/
create app/views/echo_test
create test/functional/
create test/unit/helpers/
create app/controllers/echo_test_controller.rb
create test/functional/echo_test_controller_test.rb
create app/helpers/echo_test_helper.rb
create test/unit/helpers/echo_test_helper_test.rb
就在app/controllers底下新增了echo_test_controller.rb接下來就是編寫其內容
==================================
class EchoTestController < ApplicationController
def index
render :text => 'Hello ' + params[:name]
end
end
==================================
存檔之後
我們來要設定一下routes.rb
在config/routes.rb中最後面幾行
# Install the default routes as the lowest priority.
# Note: These default routes make all actions in every controller accessible via GET requests. You should
# consider removing or commenting them out if you're using named routes and resources.
map.connect ':controller/:action/:id'
map.connect ':controller/:action/:id.:format'
請把最後兩行前面加上#
# map.connect ':controller/:action/:id'
# map.connect ':controller/:action/:id.:format'
加上一行
map.connect '/getTest', :controller => 'echo_test'
這行是要告訴server 當使用者打上
http://127.0.0.1/getTest 要用 echo_test_controller.rb這個controller 也就是我們名命的EchoTestController來做事情
最後把server啟動
還有一點要注意就是只有administrator才可以用80這個port
所以我們要這樣打(一樣是在getTest/ 底下)
sudo script/server -p 80
Password:
輸入密碼後會看到
=> Booting Mongrel
=> Rails 2.3.5 application starting on http://0.0.0.0:80
=> Call with -d to detach
=> Ctrl-C to shutdown server
表示server在run了哦
打開Browser,在網址的地方輸入
http://127.0.0.1/getTest?name=michael
就會看到
Hello michael
在網頁上了
沒有留言:
張貼留言