1

誰かがfilter()、セットアップを含む複数の値で動作するようにdatagridをセットアップするための適切な構文を投稿できcolumn()ますか?

私のユースケースは、特定の原点からの距離でフィルタリングしたいというものです。原点でフィルタリングすることはできますが、遠くにハードコーディングする必要があります。「ニューヨーク州ニューヨーク」と「25」をフィルターに渡して、ニューヨーク州ニューヨークから25マイル以内のすべての結果を取得できるようにしたいと思います。

2つの変数をコードブロックに正常に渡す方法だけを実際のロジックに示す必要はありません。

ありがとう!

4

2 に答える 2

0

これは動作します

filter(:user_location, :string, :header => "Location", :multiple=>true) do |value|

origin = value[0]
distance = value[1]

end

この方法でフィルターを設定すると、フォームフィールドが[]自動的に入力されて生成されます。複数の値を渡すには、角かっこ内にコンマで区切って入力する必要があるようです。すなわち["New York, NY", "25"]。これは本当にうまく解決する必要があります。フォームを送信すると、フィルタリングが実行されますが、フィールドには。が入力され["[\"New York, NY\", \"25\"]"]ます。

于 2012-12-07T20:30:34.687 に答える
0

少し違うことをお勧めします。2つのものを1つに連結する必要はありません。

filter(:user_location, :string, header: 'Location') do |value, model, grid|
  origin = value
  distance = grid.radius
  ...
end

filter(:radium, :enum, select: [5,10,15,20,25], dummy: true) 
  # can be integer instead of enum
于 2015-05-30T19:18:53.003 に答える