モデルがあり、このモデルには名前がステータスである属性があります。ステータスの検証は次のとおりです。
validates_inclusion_of :status, :in => [:nil, :new, :old], :message => "......"
モデルの編集フォームを作成します。これが選択入力です。
=f.select :status, [["New Record", :new], ["Old Record", :old]], {:include_blank => false}
編集フォームを送信すると、ステータスをシンボルとして取得できず、この領域に関するエラーが発生します。
「to_sym」メソッドでステータスパラメータを変更しようとすると、機能します。
params[:my_model][:status] = params[:my_model][:status].to_sym
なぜこの方法を使用する必要があるのですか? データをシンボルとして送信する方法はありますか?