2011-08-28 61 views

回答

2

你不能。我正在尝试向博客应用程序添加主题功能,事实证明,它不会看到应用程序帮助程序方法或实例变量。

我做了什么,而不是为创建CSS视图为主题的表演动作,像show.css.erb,这将通过网址访问,就像/themes/black.css

的同样可以用javascript来完成,所以如果你需要一个特定的javascript视图,只需创建一个视图为posts.js.erb

这种技术在rails中甚至不是新事物。我记得有人在twitter上问过你是否可以在asp.net mvc中做这样的事情09

此外,你需要让你的控制器响应这种格式,下面是我正在处理的应用程序的一个片段。

def show 
    @theme = Theme.find(params[:id]) 

    respond_to do |format| 
    format.html 
    format.css 
    end 
end 
+1

只是澄清我原来的问题是怎么回事:当资产被打包时,您可以在启动时访问资产管道中的Rails.env。但一旦完成,资源就会在应用程序运行时作为静态文件提供。什么都不能插入。 – Gavin

1

我想你需要从视图提醒这个,而不是一个静态的js文件。