発生している問題・gem 'ancestry'のインストールはしています。rails db:seedをするとエラーが出てしまいます。
rails aborted! NoMethodError: undefined method `ancestry' for #<Category:0x00007fa5d14d7668> Did you mean? ancestors /Users/hasegawaakiranari/projects/fleamarket_sample_80a/db/seeds.rb:18:in `<main>' /Users/hasegawaakiranari/projects/fleamarket_sample_80a/bin/rails:9:in `<top (required)>' /Users/hasegawaakiranari/projects/fleamarket_sample_80a/bin/spring:15:in `<top (required)>' bin/rails:3:in `load' bin/rails:3:in `<main>' Tasks: TOP => db:seed (See full trace by running task with --trace)
該当のソースコード
#seeds.rb ladies_child_array = ['トップス','ジャケット/アウター','パンツ','スカート','ワンピース','靴','ルームウェア/パジャマ','レッグウェア','帽子','バッグ','アクセサリー','ヘアアクセサリー','小物','時計'] ladies_grandchild_array = [ ['Tシャツ/カットソー(半袖/袖なし)','Tシャツ/カットソー(七分/長袖)','シャツ/ブラウス(半袖/袖なし)','シャツ/ブラウス(七分/長袖)','ポロシャツ','キャミソール','タンクトップ','ホルターネック','ニット/セーター','チュニック','カーディガン/ボレロ','アンサンブル','ベスト/ジレ','パーカー'], ['テーラードジャケット','ノーカラージャケット','Gジャン/デニムジャケット','レザージャケット','ダウンジャケット','ライダースジャケット','ミリタリージャケット','ダウンベスト','ジャンパー/ブルゾン','ポンチョ','ロングコート','トレンチコート','ダッフルコート','ピーコート'], ['デニム/ジーンズ','ショートパンツ','カジュアルパンツ','ハーフパンツ','チノパン','ワークパンツ/カーゴパンツ','クロップドパンツ','サロペット/オーバーオール','オールインワン','サルエルパンツ','ガウチョパンツ','その他'], ['ミニスカート','ひざ丈スカート','ロングスカート','キュロット','その他'], ['ミニワンピース','ひざ丈ワンピース','ロングワンピース','その他'], ['ハイヒール/パンプス','ブーツ','サンダル','スニーカー','ミュール','モカシン','ローファー/革靴','フラットシューズ/バレエシューズ','長靴/レインシューズ','その他'], ['パジャマ','ルームウェア'], ['ソックス','スパッツ/レギンス','ストッキング/タイツ','レッグウォーマー','その他'], ['ニットキャップ/ビーニー','ハット','ハンチング/ベレー帽','キャップ','キャスケット','麦わら帽子','その他'], ['ハンドバッグ','トートバッグ','エコバッグ','リュック/バックパック','ボストンバッグ','スポーツバッグ','ショルダーバッグ','クラッチバッグ','ポーチ/バニティ','ボディバッグ/ウェストバッグ','マザーズバッグ','メッセンジャーバッグ','ビジネスバッグ','旅行用バッグ/キャリーバッグ'], ['ネックレス','ブレスレット','バングル/リストバンド','リング','ピアス(片耳用)','ピアス(両耳用)','イヤリング','アンクレット','ブローチ/コサージュ','チャーム','その他'], ['ヘアゴム/シュシュ','ヘアバンド/カチューシャ','ヘアピン','その他'], ['長財布','折り財布','コインケース/小銭入れ','名刺入れ/定期入れ','キーケース','キーホルダー','手袋/アームカバー','ハンカチ','ベルト','マフラー/ショール','ストール/スヌード','バンダナ/スカーフ','ネックウォーマー','サスペンダー'], ['腕時計(アナログ)','腕時計(デジタル)','ラバーベルト','レザーベルト','金属ベルト','その他'] ] parent = Category.create(name: 'レディース') #18行目 ladies_child_array.each_with_index do |child, i| child = parent.children.create(name: child) ladies_grandchild_array[i].each do |grandchild| child.children.create(name: grandchild) end end #rails begin load File.expand_path('../spring', __FILE__) rescue LoadError => e raise unless e.message.include?('spring') end APP_PATH = File.expand_path('../config/application', __dir__) require_relative '../config/boot' require 'rails/commands'#9行目 #spring unless defined?(Spring) require 'rubygems' require 'bundler' lockfile = Bundler::LockfileParser.new(Bundler.default_lockfile.read) spring = lockfile.specs.detect { |spec| spec.name == 'spring' } if spring Gem.use_paths Gem.dir, Bundler.bundle_path.to_s, *Gem.path gem 'spring', spring.version require 'spring/binstub' #15行目 end end 一応コントローラーを載せときます。 #20201010071622_create_categories.rb class CreateCategories < ActiveRecord::Migration[6.0] def change create_table :categories do |t| t.string :name t.timestamps end end end #20201010080147_add_ancestry_to_category.rb class AddAncestryToCategory < ActiveRecord::Migration[6.0] def change end end
試したこと
手本にしてたサイトがseed.rbに対して私が作っていたファイルがseeds.rbだったのファイル名を変えて実行してみたところ何も反応せず実行が終わってしまった。
補足情報(FW/ツールのバージョンなど)
model Categoryのcodeを
回答1件
あなたの回答
tips
プレビュー