2016-11-24 5 views
0

を照会しません、私はfolowingRailsの - 掻き回す

Sale.rb

belongs_to :client 
belongs_to :user 

has_many :line_items, dependent: :destroy 
has_many :products, through: :line_items 
has_many :deposits 

accepts_nested_attributes_for :line_items, reject_if: :all_blank, allow_destroy: true 

sales_controller.rb

def index 
    @q = Sale.ransack(params[:q]) 
    @sales = @q.result(distinct: true) 
end 

ビュー/管理/販売/ index.html.erb

を持っています
<%= search_form_for @q, url: admin_sales_path, html: {class: "form-inline"} do |f| %> 

    <%= f.search_field :sku, placeholder: "SKU", class: "input perfil" %> 
    <%= f.submit 'search', class: "btn btn-primary" %> 

<% end %> 

<table class="table"> 
    <thead> 
    <tr> 
     <th><%= sort_link @q, :sku, "SKU" %></th> 
     <th colspan="3"></th> 
    </tr> 
    </thead> 

    <tbody> 
    <% @sales.each do |sale| %> 

    ... 
    <% end %> 
    </tbody> 
</table> 

最後にこれはl端末からのog:

Started GET "/admin/sales?utf8=%E2%9C%93&q%5Bsku%5D=sample&commit=search" for ::1 at 2016-11-24 00:29:33 -0600 
Processing by Admin::SalesController#index as HTML 
Parameters: {"utf8"=>"✓", "q"=>{"sku"=>"sample"}, "commit"=>"search"} 
Sale Load (0.3ms) SELECT DISTINCT "sales".* FROM "sales" 
Rendered admin/sales/index.html.erb within layouts/admin (7.5ms) 
Completed 200 OK in 361ms (Views: 346.0ms | ActiveRecord: 1.6ms) 

すべてはうまくいくようですが、何もフィルタされていないようです。

注:私は他のモデルでも同じ方法を適用し、問題なく動作します。

+0

<%= f.search_field:sku_eq、プレースホルダ: "SKU"、クラス: "入力perfil"%> お試しください –

+0

wow私は恥ずかしいです、超初心者のエラー、 sku_eq( "_eq"の終了)。ありがとう。 – user3754535

+0

ソリューションに追加してください –

答えて

1

あなたは答えは簡単だった少しミス

0

を持っているこの

<%= f.search_field :sku_eq, placeholder: "SKU", class: "input perfil" %> 

を使用してください:ビュー/管理/販売/ index.html.erbで

... 
    <%= f.search_field :sku_eq, placeholder: "SKU", class: "input perfil" %> 
    ... 

私はf.search_fieldで終わる "_eq"を入力するのを忘れた:sku _eq

+0

私はちょうど以下の答えを与えたと思う、それは解決策として重複を追加する代わりにそれを受け入れることが良いと思う、右のダニをクリック –

関連する問題