使用角度和轨道进行搜索搜索

时间:2016-02-16 18:10:24

标签: ruby-on-rails angularjs ransack

我正在使用角度导轨进行搜索搜索。所以我现在有疑问 在使用ransack的普通rails应用程序中,我们在下面的表单中确实如此。

<%= search_form_for @search, url: search_path, id: "listings_search" do |f| %>
      <div class="col-md-2">
        <%= text_field_tag :search, params[:search], placeholder: "Where are you going?", id: "autocomplete-input", class: "form-control" %>
      </div>
      <div class="col-md-2">
        <%= text_field_tag :start_date, params[:start_date],
                           placeholder: "Start Date", class: "form-control" %>
      </div>
      <div class="col-md-2">
        <%= text_field_tag :end_date, params[:end_date],
                           placeholder: "End Date", class: "form-control" %>
      </div>
      <div class="col-md-2">
        <%= f.text_field :price_gteq, placeholder: "Min Price",
                         class: "form-control" %>
      </div>
      <div class="col-md-2">
        <%= f.text_field :price_lteq, placeholder: "Max Price",
                         class: "form-control" %>
      </div>
      <div class="col-md-2">
        <%= f.submit "Search", class: "btn btn-primary btn-md" %>
      </div>
  <% end %>

但是如何在使用角度时使这个工作?在使这个表单以角度工作时,我需要做些什么而不是search_form_forgteq等吗?

1 个答案:

答案 0 :(得分:1)

我发现在这方面没有任何具体的角度。只需发送params,就像我们希望它在rails应用程序中接收一样。只需确保所有内容都在:q内发送,以便进行搜索。以下代码片段中的参数与问题不同,因为我更改了代码库,无法找到我为上面的代码完成的提交。但这正是我们应该做的事情

$http({
            url: "/search.json",
     method: "GET",
                params: {
                    latitude: $scope.GeneralFactory.Details.geometry.location.lat(),
                    longitude: $scope.GeneralFactory.Details.geometry.location.lng(),
                    q: { //Here is the ransack parameters
                        base_price_gteq: $scope.base_price,
                        daily_price_lteq: $scope.daily_price
                    },

                },
                paramSerializer: '$httpParamSerializerJQLike'
}