在视图目录中组织.html.erb和.js.erb文件

时间:2016-05-17 02:24:33

标签: ruby-on-rails ruby

我有一个名为blogs的视图目录。在该目录中,您可以找到所有标准的传统html视图模板:

# html files within the app/views/blogs directory 
  _form.html.erb
  edit.html.erb
  index.html.erb
  new.html.erb
  show.html.erb

但是:我也有一些动态更改页面内容的ajax视图(主要是表单上的内容)。目前他们都混入了.html.erb文件,这些文件感觉有点混乱和无组织:

# now showing the html AND js files within the app/views/blogs directory 
  _form.html.erb
  add_foobar.js.erb
  add_barbazz.js.erb
  edit.html.erb
  filter_by_team.js.erb
  filter_by_city.js.erb
  filter_by_state.js.erb
  index.html.erb
  new.html.erb
  show.html.erb

我认为从.html.erb文件中分离js.erb文件是有意义的,但我不知道如何执行此操作,因为它们都属于blogs目录。

如何整理此目录中的.js.erb.html.erb文件?

2 个答案:

答案 0 :(得分:1)

为什么不将.js文件放在另一个目录中并使用content_for注入它们。像这样 -

http://www.railscook.com/recipes/how-to-organize-page-specific-javascript/

答案 1 :(得分:1)

您可以对您的操作说明确切的模板

respond_to do |format|
  format.js { render "blogs/js/filter_by_team" }
end

将js模板放入views/blogs/js