こんにちは皆私はチュートリアルに従っていました。私は自分の記事とカテゴリの間に多くの関連付けを作成しようとしていましたので、アソシエーションmany_many NoMethodError:nil:NilClassの未定義メソッド `name '
rails g model article_category article_id:integer category_id:integer
と私はarticle.rb内部
belongs_to :article
belongs_to :category
を入力したこのモデル内部:
has_many :article_categories
has_many :categories, through: :article_categories
とcategory.rb内側:
has_many :article_categories
has_many :articles, through: :article_categories
ので、私はコンソールに行きました:次のように入力して関連付けるために:私はarticle.categoriesに
#<ActiveRecord::Associations::CollectionProxy []>
を確認
Article.all
Article.first
広告をし、私もカテゴリで試しました
category.all
category.first
と結果だった:
category
=> #<Category id: 6, name: "sport", created_at: "2016-04-11 06:41:25", updated_at: "2016-04-11 06:41:25">
article
=> #<Article id: 25, title: "kkkk", description: "lll", created_at: "2016-04-13 07:32:38", updated_at: "2016-04-13 07:32:38", user_id: 21>
ので、私は次のように入力して、このカテゴリーのこの記事の一部を作ってみました:
category.articles << article
ので、私はこのエラーを得た:
INSERT INTO `article_categories` (`article_id`, `category_id`, `created_at`, `updated_at`) VALUES (25, 6, '2016-04-18 09:06:58', '2016-04-18 09:06:58')
(12.9ms) ROLLBACK
NoMethodError: undefined method `name' for nil:NilClass
this is the errorを 任意のアイディアの男 ありがとう
を添加しているかどうかを確認することができますが、この結果を過ぎてくださいすることができます: 'category.errors.full_messages'? –
それはちょうど私に空のハッシュを与える[] –
これは奇妙です! 'article.categories << category'をチェックしようとしましたか?試して結果を投稿してください... –