Rails呈现部分移动格式的视图而不是html格式

时间:2015-09-06 16:30:13

标签: jquery ruby-on-rails ajax nginx passenger

我有我的rails项目的移动版和网络版,并且在生产中遇到ajax调用问题。当我在网络版上调用这部分代码时,它会加载网站的移动版本:

$("#items_grid #page").html("<%= escape_javascript(render :partial => 'shared/catalog_product', :formats => session[:mobile_param].to_i == 1 ? 'mobile' : 'html') %>")

通常它工作正常,但是在将部署到Web服务器之后传递某段时间会发生这种错过。通过在 shared / catalog_product.html.erb 文件中添加一些更改,我可以在一段时间内再次恢复。我猜网络服务器以某种方式将此文件保存在缓存中,并且无法看到 shared / catalog_product.mobile.erb shared / catalog_product.html.erb 之间的区别 我正在使用 nginx + passenger 来部署项目。 我也检查过,确定问题不在session[:mobile_param].to_i == 1

1 个答案:

答案 0 :(得分:0)

您可以添加data-no-turbolink属性data-no-turbolink="true"以从Turbolinks中选择退出此链接,这样就不会缓存ajax调用的响应

更多内容: http://blog.teamtreehouse.com/rails-4-a-look-at-turbolinks https://github.com/rails/turbolinks