0

私はこのようなことを達成しようとしています:

簡単なブログを作成しています。ブログのカテゴリを設定しました。ユーザーが投稿/インデックスにアクセスすると、すべてのカテゴリのリストが表示されるようにしたいと思います。

例:テキスト画像

カテゴリをクリックすると、ユーザーは投稿/新しいページにリダイレクトされます。このページでは、category_idフィールドがhidden_​​fieldを介して送信されます。

したがって、現在の私のコードは次のとおりです。

投稿/インデックス

<% @categories.each do |c| %> 
  <%= link_to c.name, new_post_path(:category => c.id) %><br />
<% end %>

そして私の投稿/_formで私はこのようなことをしようとしています

<%= f.hidden_field :category_id, :value => params[:category_id] %>

html出力が

値は渡されていません。

ここに進む正しい方法は何ですか?どうも!

4

2 に答える 2

1

一見すると、パラメータ名のcategoryとcategory_idを混同しているという単純な間違いのように見えます。

これを試して:

<% @categories.each do |c| %> 
  <%= link_to c.name, new_post_path(:category_id => c.id) %><br />
<% end %>
于 2012-07-19T01:27:50.090 に答える
1

また、あなたのコードで私が理解できることから、投稿はカテゴリに属しているようです。このような場合、ルートを相互にネストすることができ、ネストされたオブジェクトを作成するためのパス(new_category_post(@category)など)にアクセスできるようになります。

ルーティングは次のようになります。

resources :categories do
  resources :posts
end

この問題については、http://guides.rubyonrails.org/routing.htmlで読むことができます。

于 2012-07-19T01:42:52.153 に答える