2017-05-23 9 views
3

まず、wice_grid gemが今のところレール5をサポートしていないことを知っています。ウェブ上には既に問題があります。wice_grid gemをレールに使用しているときに `raise_on_unfiltered_pa​​rameters`でパラメータフィルタリングを有効にする方法5

しかし、今私は私のWebアプリケーション開発の途中です。

問題:

私のアプリケーションにフィルタプロパティを持つ簡単なデータグリッドが必要です。以下は私のコードです:

customers_controller.rb

class CustomersController < ApplicationController 
    layout "themeLayout" 
    before_action :permit_params 

    def index 
    @grid = initialize_grid(Customer) 
    end 

    def permit_params 
    params.permit! 
    end 
end 

index.html.erb

<%= grid(@grid) do |g| 

    g.column name: 'Id' do |task| 
     task.id 
    end 

    g.column name: 'Name', attribute: 'name' do |task| 
     task.name 
    end 

    g.column name: 'Company Name', attribute: 'company_name' do |task| 
     task.company_name 
    end 

end %> 

ログファイル

to_hashが予期せず、パラメータフィルタリングを無視し、強制するために変更されますそれはRails 5.1にあります。

raise_on_unfiltered_parametersは新しいアプリケーションのデフォルトであるパラメータフィルタリングを有効にします。

既存の非推奨動作については、代わりに#to_unsafe_hを呼び出してください。

駆除警告:num_pagesは廃止され、Kaminari 1.0では削除されます。代わりにtotal_pagesを使用してください。

上記のコードは、要件に従ってデータグリッドを生成しますが、フィルタ結果を表示することはできません。

私の主なデバッグでは、paramsがnull値を持っていて、このエラーが発生することがわかりました。

任意のポインタは

答えて

2

が警告に従って、この.to_hashが唯一のparamsを許可に変換されます後のconfig/application.rb

config.action_controller.raise_on_unfiltered_parameters = true

を追加...理解されるであろう。

関連する問題