6

コードの何が問題なのか理解できません (Rails 4):

投稿からのパラメータ:

{:name => "name"}

新しいアクション:

m=Menu.new(params.permit(:name))

このコードの最後の行は、「メニューの名前に保護された属性を一括割り当てできません」を生成します

4

1 に答える 1

13

Rails 4 で strong_parameters を使用する標準的な方法は、許可されたパラメーターを定義するコントローラーでプライベート メソッドを作成することです。そのようです:

def new
  @m = Menu.new(menu_params)
end

private

def menu_params
  params.require(:menu).permit(:name, :etc, :etc)
end

次に、モデルから attr_accessible 行を削除できます。

見る:

http://edgeapi.rubyonrails.org/classes/ActionController/StrongParameters.html http://railscasts.com/episodes/371-strong-parameters

于 2013-08-23T21:28:57.157 に答える