相关疑难解决方法(0)

Rails生成静态文件路由错误

当我在test/dev中本地运行我的应用程序时,我的视图很好地出现了,一切都很愉快.当我尝试导航到我的远程服务器/本地生产服务器上运行的那些相同的erb文件时,我得到如下错误:

ActionController::RoutingError (No route matches "/stylesheets/scaffold.css")
Run Code Online (Sandbox Code Playgroud)

我在这里看过类似的问题,但没有一个能够解决我的问题.我找到答案的最接近的答案是第一个答案:样式表或JavaScript文件的Rails 404错误

据我所知,最好的办法是配置我的网络服务器以提供静态文件.我如何在本地/ Heroku上这样做?

更新

根据raidfive的建议,我将config.serve_static_assets从false更改为true,这解决了我的问题.但是,我看到它在production.rb中说Apache或nginx应该已经在提供静态资产.以这种方式提供静态资产是不是更好/更专业?如果是这样,如果我使用Heroku,我将如何达到预期的效果?

更新2

显然Heroku 会自动执行此操作,我有一个额外的逗号导致恶作剧.我能够使用以下提示查看扩展的Heroku日志来追踪问题.谢谢!

static ruby-on-rails heroku

16
推荐指数
1
解决办法
9763
查看次数

Rails - 部署中的路由失败

我有一个应用程序在路由文件中具有以下内容:

  namespace "admin" do 
    # ADMINISTRATIVE ROUTES ONLY 
    root :to => 'home#index' 
    resources :comments do 
      member do 
        get :approve 
        get :reject 
      end 
    end 
    resources :users do 
      member do 
        get :block 
        get :unblock 
      end 
    end 
  end 
Run Code Online (Sandbox Code Playgroud)

在本地浏览/ admin时,我会收到相应页面的欢迎.在heroku版本的相同URL上,我得到404.该路线在'heroku rake routes'中正确显示

日志显示:

ActionController::RoutingError (wrong constant name Admin/ 
homeController): 
/disk1/home/slugs/196384_c95a9e3_4463/mnt/.bundle/gems/gems/ 
activesupport-3.0.0.beta4/lib/active_support/inflector/methods.rb: 
103:in `const_defined?'
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

routing ruby-on-rails heroku

5
推荐指数
1
解决办法
468
查看次数

标签 统计

heroku ×2

ruby-on-rails ×2

routing ×1

static ×1