ajax在带有生产环境的rails 3.2上不起作用

时间:2012-05-31 05:03:36

标签: ruby-on-rails-3.2

大家。

我创建了一个新项目和脚手架。 当我使用'RAILS_ENV = production rails s'执行rails服务器时,ajax似乎不起作用。

  

rails new testpro

     

cd testpro

     

rails g scaffold用户名:string email:string

     

rake assets:precompile

     

RAILS_ENV =生产佣金db:migrate

     

RAILS_ENV =生产轨道s

我添加了一条记录,然后返回索引页面。 我可以看到记录和显示,编辑,销毁链接。 当我点击destroy链接时,它只显示记录。 似乎链接工作得到了请求。

应该弹出删除确认。

Webrick报告以下消息。

  

开始获取“/assets/application-f79f879edae5d837e15161fba0ee9d3d.js”   在2012-05-31 14:02:12 +0900

为127.0.0.1      

ActionController :: RoutingError(没有路由匹配[GET]   “/assets/application-f79f879edae5d837e15161fba0ee9d3d.js”):

实际上,我遇到了与其他项目相同的问题,并尝试用简单的项目来澄清问题。

我的环境如下: Rails 3.2.3 红宝石1.9.3p125 sqlite3的

其他项目: Rails 3.2.0 红宝石1.9.3p125 MySQL的 Apache2 + Passenger

2 个答案:

答案 0 :(得分:0)

我认为您根本没有预编译资产

rake assets:precompile

默认情况下,在生产模式下,不会加载资产编译所需的宝石,并且假设资产已预编译到文件中,可以从中以最快的速度提供资源。

答案 1 :(得分:0)

生产中的config.serve_static_assets = true.rb适用于新项目。

至于我的项目,我修改了application.js,我的项目工作正常。

brefore:

//= require twitter/bootstrap
//= require jquery  
//= require jquery_ujs  

后:

//= require jquery  
//= require jquery_ujs  
//= require twitter/bootstrap