在我的Rails 3應用程序我使用Ajax來獲得一個格式化的HTML:是否有可能調用Rails 3中控制器中使用「content_tag」的方法?
$.get("/my/load_page?page=5", function(data) {
alert(data);
});
class MyController < ApplicationController
def load_page
render :js => get_page(params[:page].to_i)
end
end
get_page
使用content_tag
方法和應可也app/views/my/index.html.erb
。
由於get_page
使用許多其他的方法,我封裝的所有功能於:
# lib/page_renderer.rb
module PageRenderer
...
def get_page
...
end
...
end
,其中包括它這樣:
# config/environment.rb
require 'page_renderer'
# app/controllers/my_controller.rb
class MyController < ApplicationController
include PageRenderer
helper_method :get_page
end
,但由於content_tag
方法不可用app/controllers/my_controller.rb
,我得到以下錯誤:
undefined method `content_tag' for #<LoungeController:0x21486f0>
所以,我想補充:
module PageRenderer
include ActionView::Helpers::TagHelper
...
end
,但後來我:
undefined method `output_buffer=' for #<LoungeController:0x21bded0>
我在做什麼錯?
你會如何解決這個問題?
,如果你有:'::的ActionView ::助手TagHelper '在你的控制器中。順便說一句,似乎你使用我的答案從你的幫手問題:) – apneadiving 2011-06-02 11:04:49
@apneadiving:我包括'ActionView :: Helpers :: TagHelper',你可以看到上面。是的,你對我的其他問題的回答似乎是合理的,除了'get_page'處理表示,但在控制器中定義的事實:) – 2011-06-02 11:09:00
該死的,我的評論真的沒用,對不起,我稍後再看一次:) – apneadiving 2011-06-02 13:31:12