2010-05-20 28 views
1

有没有什么办法可以将我的CSS内部的资源路由到剩下的视图所在的位置?我的意思是,在CSS内我可以调用url_for或css_for或类似的东西,以使图像通过资产路由器?Rails路由INSIDE CSS

预先感谢您!

+0

你为什么要这样做?您不希望Web服务器可以通过Rails处理请求。只有需要应用程序逻辑的请求才能通过路由。 你能否澄清你为什么要这样做?可能有更好的答案。 – Ben 2010-05-20 16:21:58

+0

由于CSS链接到资产,并且这些资产的位置在production.rb中设置。我想设置一次,并让所有资产看起来如此。 – tesserakt 2010-05-20 18:10:31

回答

2

您可以使用控制器操作渲染CSS(使用erb模板)并将内容类型设置为text/css

看看这个博士帖子从乔希苏瑟在dynamically generated stylesheets。它是从2006年开始的,但所描述的技术仍然适用。

+0

这真的很有帮助!实际上,我们考虑使用它,因为作为一项资产,您可以使用%d通配符来更改哪个服务器被调用缓存。但是,如果我们必须调用rails来生成CSS,那么只需将一个Cache服务器硬编码为CSS就可能会更快。 – tesserakt 2010-05-20 23:35:24