在Rails3中,除了/public/JavaScripts之外,如何将JavaScripts放在任何地方?

在Rails3中,除了/public/JavaScripts之外,如何将JavaScripts放在任何地方?,javascript,ruby-on-rails-3,Javascript,Ruby On Rails 3,我有一个Rails 3视图(用于我的#控制器#show),其中包含大量JavaScript 我想将该JavaScript移动到一个单独的my_show.js文件中,然后使用Rails的JavaScript\u include\u标记方法包含该文件。如果我将my_show.js放在/public/javascripts目录中,这就可以工作了。但我更愿意将文件放在与其关联的视图的同一目录中 是否可以配置rails,以便我可以使用javascript\u include\u标记来包含/public/j

我有一个Rails 3视图(用于我的#控制器#show),其中包含大量JavaScript

我想将该JavaScript移动到一个单独的
my_show.js
文件中,然后使用Rails的
JavaScript\u include\u标记
方法包含该文件。如果我将
my_show.js
放在
/public/javascripts
目录中,这就可以工作了。但我更愿意将文件放在与其关联的视图的同一目录中

是否可以配置rails,以便我可以使用
javascript\u include\u标记
来包含
/public/javascripts
之外的文件

我现在的解决方案是制作一个名为
\u My\u show.html.haml
的分部代码。在这个文件中,我放置了我的JavaScript代码。然后我使用
render
包含该文件


我想知道是否有一个首选的Rails 3方式来做我想要的。

你可以考虑为JS文件创建一个路径。

get '/my_controller/show_js.js' => 'my_controller#show_js'
并将js内容放入
视图/my_controller/show_js.js.erb

现在,您应该能够通过以下方式包含js文件:

javascript_include_tag "/my_controller/show_js.js"

可以考虑为JS文件创建一个路径。

get '/my_controller/show_js.js' => 'my_controller#show_js'
并将js内容放入
视图/my_controller/show_js.js.erb

现在,您应该能够通过以下方式包含js文件:

javascript_include_tag "/my_controller/show_js.js"
即将推出的包括提供资产管道功能,在放置JavaScript和其他资产时提供更大的灵活性

您还可以独立于Rails 3.1使用链轮。

即将推出的包括提供资产管道功能,在放置JavaScript和其他资产时提供更大的灵活性


你也可以独立于Rails 3.1使用链轮。

我想这是可行的,我只是将所有文件放在/public/javascripts中,其子目录位于组织的子目录之下。至少这允许我拥有普通的.js文件(而不是.js.erb文件),并且我不必为每个文件添加路由。我想有一种更聪明的方法可以做到这一点,但我的解决方案目前还可以。我想这也行得通,我只是把我所有的文件都放在/public/javascripts中,子目录就在组织的下面。至少这允许我拥有普通的.js文件(而不是.js.erb文件),并且我不必为每个文件添加路由。我想有一种更聪明的方法可以做到这一点,但我的解决方案目前还有效。