Rails stylesheet_link_tag链接到错误的位置

时间:2010-02-19 05:16:06

标签: ruby-on-rails

提前感谢您的帮助。

我试图让我的rails应用程序第一次看起来非常好看,而且我在使用样式表时遇到了很多麻烦。

在我的application.html.erb布局文件中,我有一行:

<%= stylesheet_link_tag 'application', 'formtastic', 'formtastic_changes', :cache => "base" %>

我认为应该完成所有工作。但是当我加载页面时,样式表根本不加载。在探讨了一下之后我发现了问题,但是没有最模糊的想法如何解决它!

而不是从localhost:3000/stylesheets/application.css

加载样式表

我的浏览器正在尝试从localhost:3000/myApp/stylesheets/application.css

加载

并且找不到那张纸(因为那里不存在..)

那么,我有什么想法可以解决这个问题吗?而且,更一般地说,为什么某些路径最终看起来像localhost:3000/myApp/page,有些路径看起来像localhost:3000/page

再次感谢!

2 个答案:

答案 0 :(得分:1)

听起来像你的相对网址根变量的问题。检查您的应用,看看您是否正在设置 ActionController::Base.relative_url_rootENV['RAILS_RELATIVE_URL_ROOT']

答案 1 :(得分:0)

  1. 在您的应用配置目录中搜索“myApp”。其中有一些东西覆盖了默认路由或asset_dir行为。
  2. 尝试删除:cache => "base"作为参数。这样可以将样式表整合在一起(在生产模式下)并且可能会产生干扰。
  3. 通常,请确保始终使用帮助程序函数为视图生成链接和URL。 (link_to,url_for,form_for,link_to_remote等)这应该使网址在整个应用中保持一致。