我有一个我自己无法解决的问题,所以我很感激任何帮助。它涉及我的 Rails 应用程序,其中包含用户身份验证。
问题是,我想要一个搜索功能的输入表单,将输入发布到处理搜索查询的新页面。但它不起作用,因为 Rails 有点认为 POST 属于整个用户身份验证,并将我重定向到登录页面。
所以问题是,我如何将这个输入表单与其他输入表单区分开来。我想我可能需要一个新的搜索控制器,但整个搜索不是由 Rails 处理的,而是由 JavaScript 处理的。
以下是一些细节:
在 routes.rb 中:
controller :sessions do
get 'login' => :new
post 'login' => :create
delete 'logout' => :destroy
get 'logout' => :destroy
end
application.html.erb 中的表单:
<div class="btn-group" style="height: 20px;">
<form action="/#search" method="post">
<input id="search" type="text" class="search-query span2" placeholder="Search Our Database">
</form>
</div>
以及处理表单的 JavaScript/CoffeeScript(调用 'URL/#search' 时调用此函数:
displaySearch = ->
str = $("#search").val()
html = "You have just searched for "
html += "<strong>" + str + "</strong>"
$("#appCanvas").html html
我非常感谢您关于如何解决此问题的提示 :) 非常感谢,祝您有美好的一天!