ruby-on-rails – Rails 4 – request.original_fullpath和request.fullpath之间的区别是什么

我需要在我们的数据库中存储用户搜索查询以跟踪搜索历史记录.我知道request.original_url会将查询字符串作为绝对URL.
http://www.example.com/search?utf8=%E2%9C%93&keywords=cars&view=grid

我宁愿存储相对url路径.话虽如此,对于所有params的相对url,request.original_fullpath和request.fullpath之间有什么区别?他们似乎是一回事?

request.original_fullpath

/search?utf8=%E2%9C%93&keywords=cars&view=grid

request.fullpath

/search?utf8=%E2%9C%93&keywords=cars&view=grid

解决方法

original_fullpath返回一个字符串,其中包含最后请求的路径,包括它们的参数.

fullpath返回String完整路径,包括请求的最后一个URL的params.

original_fullpath和fullpath之间的区别在于,original_fullpath方法不包含原始url中不存在的参数(即通过POST而不是GET发送的参数).

相关文章

以下代码导致我的问题: class Foo def initialize(n=0) @n = n end attr_accessor :n d...
这是我的spec文件,当为上下文添加测试“而不是可单独更新用户余额”时,我得到以下错误. require 's...
我有一个拦截器:DevelopmentMailInterceptor和一个启动拦截器的inititializer setup_mail.rb. 但我想将...
例如,如果我有YAML文件 en: questions: new: 'New Question' other: recent: ...
我听说在RSpec中避免它,let,let !,指定,之前和主题是最佳做法. 关于让,让!之前,如果不使用这些,我该如...
我在Rails中使用MongoDB和mongo_mapper gem,项目足够大.有什么办法可以将数据从Mongoid迁移到 Postgres...