开发者

How do I add a partial's current folder to the rails view path?

I have a set of partials that are used to update a section of a form depending on the user's choice from a drop-down menu. There are a lot of different choices, so rather than having a view folder like this:

app/views/myview/
  _choice001.html.er开发者_C百科b
  _choice002.html.erb
  ...
  _choice998.html.erb
  _choice999.html.erb
  _form.html.erb
  _sharedchoicestuff1.html.erb
  _sharedchoicestuff2.html.erb
  edit.html.erb
  new.html.erb

I want to lay it out like this:

app/views/myview/
  choices/
    _choice001.html.erb
    _choice002.html.erb
    ...
    _choice998.html.erb
    _choice999.html.erb
    _sharedchoicestuff1.html.erb
    _sharedchoicestuff2.html.erb
  _form.html.erb
  edit.html.erb
  new.html.erb

If I do that, then I know I need to change render :partial => whatever to render :partial => "myview/choices/#{whatever}" which is OK in the form, but I don't want to have to change it in all the choice templates. Is there a way to add '.' to the view path so I can still have render :partial => 'sharedchoicestuff1' in the choice templates.


Just create a helper for that:

def render_choice(name)
  render "myview/choices/#{name}"
end
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜