コントローラーコード:データがデータベースに格納されていないので、それがルビのレール上の入力データのIDにルーティングされていないのですか?
class ItemsController < ApplicationController
def show
end
def new
end
def create
@item = Item.new(item_params)
@item.save
redirect_to @item
end
private
def item_params
params.require(:item).permit(:mobile, :company)
end
end
New.html.erbコード
<%= form_for :item , url: items_path do |f| %>
<p>
<%= f.label :mobile %><br>
<%= f.text_field :mobile %>
</p>
<p>
<%= f.label :company %><br>
<%= f.text_field :company %>
</p>
<p>
<%= f.submit %>
</p>
<% end %>
もう一つ、私が必要とするために、私はプライベートメソッドで正しいパラメータを使用していないと思います。もしそうなら、私は何を使うべきか教えてください。
あなたは '@item.save works'を想定してはいけません。保存が成功した場合は 'redirect_to @ item'だけです。失敗した場合は' new 'をもう一度表示し、new.html.erbにエラーメッセージを表示するのが一般的です。なぜ失敗したのかを知ることができます。 – David
'item'のフォーム宣言でインスタンス変数とは対照的にシンボルを使用する理由は何ですか? – David
railsガイドではインスタンス変数が使用されていますが、それらをフォローしています.......レールガイドのサイトでも同様にこの方法で使用しています...私は:articleをthis:itemに変更しました。ポイント1の – Thinkerzz