我是rails开发的初学者,并从cakephp转移。
在cakephp中,您可以在布局中执行一些操作,自动包含任何与控制器或操作命名相同的javascript文件。
例如www.website.com/post/add
post.js和post / add.js会自动加载(如果存在)。
有没有办法在rails中执行此操作?我尝试做谷歌,但不知道要搜索什么,并没有出现太多。
(与css相同)
答案 0 :(得分:7)
我不知道rails中的这种功能, 但你可以在布局中简单地做到这一点:
javascript_include_tag "#{controller.controller_name}"
javascript_include_tag "#{controller.action_name}"
它不会检查文件是否存在,因此您可以更进一步创建应用程序帮助程序,并在那里移动js逻辑,包括并检查文件是否存在:
def include_controller_js
javascript_include_tag "#{controller.controller_name}" if File.exists?("#{Rails.root}/public/javascripts/#{controller_name}.js")
end
但是因为rails 3.1有一个带有application.js清单文件的asset pipeline,所以也许你想了解更多关于它的信息。