0

通常の GET を実行し、params に何もない場合、params ハッシュの状態はどうなりますか? 空欄 ?なし?他の何か?

paramsに「何かがある」場合にのみ命令を実行させたいコントローラーがあるからです。私は試してみました!params.nil? 、!params.blank?

それらのどれも機能しなかったため、if ブロックに入り続け、nil エラーが発生しました...

ヘルプ !

4

3 に答える 3

0

探しているものをテストしてみませんか。存在しない場合、ハッシュ値は nil になります。

if params[:something].nil?
  ..
else
  ..
于 2012-07-14T13:22:57.900 に答える
0

!params.empty? を使用したいようですね。

于 2012-07-13T21:18:30.587 に答える
0

get にパラメーターが渡されていない場合、唯一確かなことは、パラメーター ハッシュにcontrollerとキーがあることです。action取得している URL を表示しない場合、params ハッシュに他に何があるかはわかりませんが、間違いなくそこにactioncontrollerキーが含まれている必要があります。いつでも a を呼び出して、puts(params.inspect)何が起こっているかを正確に確認したり、pry gemを使用してデバッグしたりできます。

于 2012-07-13T21:19:05.603 に答える