删除两个'render:update do | page |'中的重复代码块

时间:2012-01-27 14:51:38

标签: ruby-on-rails ruby ajax

在rails控制器中,我有两个类似'render:update do | page |'的更新块。这两个块不完全相同,所以我想像这样提取重复的代码:

def render_1
 render :update do |page|
  shared_update_code(page)
  page.replace('render_1_specific_id', :partial => 'foo')
 end
end

def render_2
 render :update do |page|
  shared_update_code(page)
  page.replace('render_2_specific_id', :partial => 'bar')
 end
end

private

def shared_update_code(page)
  page.replace('common_id', :partial => 'foobar')
end

但这种方法不起作用。在render:update块中,对其他控制器方法的调用失败,因为我现在处于ActionView上下文中。

关于如何干掉这段代码的任何想法?

0 个答案:

没有答案