我有一个名为Update
. 通常,我可以updatable
用一个简单的方法渲染它的关联模型:
<%= render @update.updatable %>
不幸的是,如果我从命名空间控制器中调用此方法,那么 Rails 也会尝试命名视图路径,搜索admin/reviews/review
而不是reviews/review
. 这会导致如下错误:
Missing partial admin/reviews/review
通常我可以硬编码一个解决方法,例如:
<%= render :partial => "/reviews/review", :locals => {:review => @update.updatable}
如果关联不是多态的,这会很好,但既然是多态的,如果updatable
不是 a ,我会得到错误Review
。不幸的是,我有几十个可能updatable
的 s,用一个case
语句来分支它们会很麻烦。
有没有我没有想到的更简单的方法?