相关疑难解决方法(0)

如何防止Rails中的浏览器页面缓存

Ubuntu - > Apache - > Phusion Passenger - > Rails 2.3

我网站的主要部分会对您的点击做出反应.因此,如果您点击链接,它会将您发送到目的地,并立即重新生成您的页面.

但是,如果您点击后退按钮,则看不到新页面.不幸的是,如果没有手动刷新,它就不会出现; 看来浏览器正在缓存它.我想确保浏览器不缓存页面.

另外,我确实想为所有静态资产设置远期到期日期.

解决这个问题的最佳方法是什么?我应该在Rails中解决这个问题吗?Apache的?JavaScript的?

谢谢你的帮助,杰森


唉.这些建议都没有强迫我正在寻找的行为.

也许有一个JavaScript的答案?我可以让rails在注释中写出时间戳,然后让javascript检查以查看时间是否在五秒钟内(或者无论什么工作).如果是,那么很好,但如果没有,那么重新加载页面?

你认为这会有用吗?

感谢你的帮助,

贾森

ruby apache caching ruby-on-rails http-headers

149
推荐指数
2
解决办法
6万
查看次数

Rails - 用户在创建对象后按"Back",创建重复项

我遇到问题,当用户填写我的评估表单时,单击"创建",然后单击浏览器的后退按钮,进行一些编辑,再次单击"创建",它将创建重复的评估.

什么是防止这种事情发生的最好方法.

evaluation每个survey_criterion创作时只应存在一个.我不希望用户在点击后退按钮后丢失他们输入的任何数据,用新内容填写表单,然后再次单击"创建".

UPDATE

的routes.rb

resources :survey_criteria do
  resources :groups do
    resources :evaluations
  end
end
Run Code Online (Sandbox Code Playgroud)

survey_criterion.rb

has_many :evaluations
Run Code Online (Sandbox Code Playgroud)

evaluation.rb

belongs_to :survey_criterion
belongs_to :group
Run Code Online (Sandbox Code Playgroud)

有更复杂的关联,但我正在寻找的答案更多,"当用户按下'返回'按钮,修改表单,然后再次单击创建时,如何处理它.

我希望它更新我认为在这个实例中自动创建的那个,而不是向用户抛出错误.我知道我可以添加一个错误的验证,但我希望这对我认为的用户是不可见的.

思考?

browser ruby-on-rails back-button duplicates ruby-on-rails-3

6
推荐指数
1
解决办法
2009
查看次数