使用檢視
假設路線:
resources :users, only: [:index]
和控制器:
class UsersController < ApplicationController
def index
respond_to do |format|
format.html { render }
end
end
end
檢視 app/users/index.html.erb
將被渲染。如果檢視是:
Hello <strong>World</strong>
輸出將是一個帶有文字的網頁:“Hello World ”
如果要渲染其他檢視,可以使用:
render "pages/home"
並將使用檔案 app/views/pages/home.html.erb
。
你可以使用控制器例項變數將變數傳遞給檢視:
class UsersController < ApplicationController
def index
@name = "john"
respond_to do |format|
format.html { render }
end
end
end
在 app/views/users/index.html.erb
檔案中你可以使用 @name
:
Hello <strong><%= @name %></strong>
輸出將是:“你好約翰 ”
關於渲染語法的一個重要注意事項,你可以完全省略 render
語法,Rails 假設你省略它。所以:
class UsersController < ApplicationController
def index
respond_to do |format|
format.html { render }
end
end
end
可以寫成:
class UsersController < ApplicationController
def index
respond_to do |format|
format.html
end
end
end
Rails 非常聰明,可以確定它必須渲染檔案 app/views/users/index.html.erb
。