我想用一个按钮替换一个简单的链接以进行样式设置。使用button_to代替link_to似乎是阻力最小的路径,而且我至少渴望保持RESTful,这意味着在这种情况下是GET请求。
当我替换:
link_to "my_page", my_page_path
使用:
button_to "my_page", my_path_path, :method => :get
......有一个'?'附加到URL的末尾。当然,这是一件小事。但有没有一种简单的方法来删除'?',因为我没有查询字符串参数?
这是一个浏览器问题,而不是一个rails问题?当然,我可以将链接设置为看起来像一个按钮,但我宁愿不...
答案 0 :(得分:3)
带数据的GET请求是在URL中发送数据的请求。浏览器(任何浏览器)识别URL中有数据的方式是问号。
基本上,它与Ruby完全无关。
您可以删除问号的唯一方法是使用“规范网址”或“干净网址”,该网址通常包含以斜杠划分的数据。
http://www.domain.com/data/more-data/
这将需要使用apache服务器上的.htaccess
文件完成URL重写。我认为在IIS(Windows)上他们使用web.config
。他们基本上使用问号将URL更改回URL,但对用户不可见。
如果您只是想从网址中删除问号,这是一种难以理解的技术而非浪费时间。
或者,您可以联系您的虚拟主机。他们可能愿意帮助你。