我在rails 3前端控制器方法中遇到问题。我正在构建一个应用程序,通过使用jquery datepicker插件选择的注册日期来查询汽车数据库。除了比较我的datepicker日期字符串和rails方法中的mysql2数据库内容之外,我得到了大部分工作。如果我对字符串进行硬编码,则查询有效,但如果我传递了从datepicker表单收到的变量,则查询无效。
_search_by_date_results.html.erb
<script type="text/javascript"> $(function() {
$("#datepicker").datepicker();
$("#datepicker").change(function() {
var date = $(this).datepicker("getDate");
date = jQuery.trim(date).substring(0, 10);
$("#placeholder").text(date);
$.ajax({
url : "/search_by_date",
type : "post",
data : { date_value: date }
});
}); });
表格:
<div class="pagetitle_search">
<p>Date: <br><br><input type="text" id="datepicker"/></p>
<%= form_tag url_for(:action => "search_by_date"), :remote => true do %>
</div>
<div class="pagetitle_search"><%= submit_tag 'search' %>
</div>
front_controller.rb
def search_by_date
date = params[:date_value]
@vehicle_types = VehicleType.find(:all, :conditions => ["commercialdate Like ?", date])
render "_search_by_date_results.html.erb"
end
end
在我的控制台中,我首先收到:
参数:{&#34; date_value&#34; =&gt;&#34; Thu Feb 05&#34;} 但没有输出到视图
当我按下搜索按钮时,我得到: SELECT ... WHERE(commercialdate LIKE NULL)
知道我可能做错了吗?