在我的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