渲染另一个命名空间的部分

时间:2012-11-14 09:22:31

标签: ruby-on-rails ruby ruby-on-rails-3

我有问题。我需要使用另一个命名空间的部分来渲染对象。

 render complain.target

尝试从当前命名空间(当前为admin

呈现部分
  

缺少部分管理员/公告/公告......

我不需要从admin /..

渲染它

我无法指定部分路径,如

render partial: '/bulletins/bulletin', locals: { bulletin: complain.target }

但它是多态关联,并且使用了不同的部分路径。 这有什么办法吗? 提前谢谢!

2 个答案:

答案 0 :(得分:3)

似乎没有可能通过render complain.target调用实现此目的(Checked on Rails 5 source)。

但是,action_view有一个配置选项可以禁用部分命名空间:

     Rails.application.config.action_view.prefix_partial_path_with_controller_namespace = false

答案 1 :(得分:1)

您可以使用render "/#{complain.target.to_partial_path}"