在升级 ruby、rubygems 和我的 gem 之前,我有一个运行良好的 Rails 应用程序。
几乎我所有的链接都是远程链接。当我通过单击其中一个链接发出第一个请求时,会触发 Fancybox 并正确打开新内容。当我关闭该框并再次单击相同的链接时,生成的请求完全不同。它请求索引,因此 Fancybox 填充了索引响应。
示例链接:
<a href="/companies/87/edit" data-remote="true">Handmade Design</a>
第一个请求:
Started GET "/companies/89/edit" for 127.0.0.1 at 2013-03-18 15:34:26 -0700
Processing by CompaniesController#edit as JS
第二个请求:
Started GET "/companies" for 127.0.0.1 at 2013-03-18 15:34:26 -0700
Processing by CompaniesController#index as */*
如果有帮助,我将依赖 jquery-rails gem、fancybox 和 remotipart gem。由于这些都已更新,似乎错误可能出现在这些区域之一,但请求完全不同的事实让我认为这是 Rails 格式的问题。下面是 Companies 控制器中编辑操作的样子:
#/controllers/companies_controller.rb
respond_to :html, :json
respond_to :js, :only => [:new, :create, :edit, :update, :destroy]
# ...
# GET /companies/1/edit
def edit
respond_with @company
end
我使用前置过滤器来获取公司。
任何帮助或线索将不胜感激。
更新
第二个请求似乎总是对当前页面的请求。
更新
我已将其隔离为 JS 问题。这似乎不是 Rails 或远程链接的问题。