0

每个人。

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

轨道新的testpro

cd testpro

rails g 脚手架 用户名:字符串 电子邮件:字符串

rake 资产:预编译

RAILS_ENV=生产 rake db:migrate

RAILS_ENV=生产轨道 s

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

它应该弹出删除确认。

Webrick 报告以下消息。

在 2012-05-31 14:02:12 +0900 开始 GET "/assets/application-f79f879edae5d837e15161fba0ee9d3d.js" 为 127.0.0.1

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

实际上,我在其他项目中遇到了同样的问题,并尝试用一个普通的项目来澄清问题。

我的环境如下: Rails 3.2.3 ruby​​ 1.9.3p125 sqlite3

其他项目:Rails 3.2.0 ruby​​ 1.9.3p125 MySQL Apache2 + Passenger

佑介。

4

2 回答 2

0

production.rb 中的 config.serve_static_assets = true 对新项目效果很好。

至于我的项目,我修改了 application.js 并且我的项目运行良好。

前:

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

后:

//= require jquery  
//= require jquery_ujs  
//= require twitter/bootstrap
于 2012-06-01T09:21:17.410 回答
0

我相信你根本没有预编译你的资产

rake assets:precompile

默认情况下,在生产模式下,资产编译所需的 gem 不会被加载,并且假定资产已被预编译成可以以最快速度提供服务的文件。

于 2012-05-31T05:17:55.447 回答