2

次のモデルを持つ次のテーブルがあります:
ユーザー( id 、role_id) has_many : エントリ
カテゴリ(id、category_name) has_many : エントリの
エントリ(id、category_id、user_id) 、コンテンツ、entry_id) belongs_to :entry、has_one :vote投票(id、count、storage_id) belongs_to :storage

ここで、ユーザーが (フォームを介して)新しいエントリを作成するときに、いくつかのことを
行う必要があります :上記の entry_id) - 投票テーブルの新しい行 (上記の storage_id では、カウントはデフォルトで 0 です)

新しいエントリを作成するためのフォームには、カテゴリを選択するためのコンボ ボックス (「写真」、「映画」など)、タイトル用のテキスト ボックス、コンテンツ用のテキスト領域だけが必要です。ここでは、accepts_nested_attributes_for :storageエントリーモデルの内部のみが必要ですか? ユーザーはフォームから投票について何も入力しないため、投票をどうするかわかりません。

http://railscasts.com/episodes/196-nested-model-form-part-1および http://api.rubyonrails.org/classes/ActiveRecord/NestedAttributes/ClassMethods.html#のような多くのチュートリアルとドキュメントに従いました。 method-i-accepts_nested_attributes_for
以前の質問Creation of object that not have model に答えてください。一方、作成では他のテーブルにいくつかのエントリを作成する必要があります が、どのように機能するかわかりません。

4

1 に答える 1

1

あなたの質問を読んでも、あなたが何を求めているのかよくわかりません。

ネストされた属性を使用している場合、もう 1 つ留意すべきことはルーティングです (関係をどのように設定しているかによって、重要な場合とそうでない場合があります)。

すなわち:

resources :users do
 resources :entries
end

私はそれが以前に私を手に入れたことを知っています:)

あなたが求めていることの私の理解から、ネストされた属性で必要なことはすべてできるはずです。

追加情報が必要な場合は、関係を設定する際に発生するエラーとともにコードを投稿することをお勧めします.

于 2013-11-11T04:55:51.883 に答える