これは、モデルに関連する2つのテーブルカテゴリ(id、name)とサブカテゴリ(id、name、category_id)を持っているからです。私はinverse_ofを以下のように設定します。 私の質問は、PHPで1年前に "カテゴリ"テーブルを持っていて、id、name、parent_id(デフォルトでは0)を持っていましたが、そのテーブルを使ってナビゲーション、ブレッドクラム、および他のナビゲーション要素を含む。Rails5カテゴリーと同じテーブル上の親カテゴリID
class CreateCategories < ActiveRecord::Migration[5.1]
def change
create_table :categories do |t|
t.string :name
t.timestamps
end
end
end
class CreateSubCategories < ActiveRecord::Migration[5.1]
def change
create_table :sub_categories do |t|
t.string :name
t.integer :category_id
t.timestamps
end
end
end
class Category < ApplicationRecord
has_many :sub_categories, inverse_of: :category
end
class SubCategory < ApplicationRecord
belongs_to :categories, inverse_of: :sub_category
end
私は4年以上にわたって、今はRuby on Railsでプログラミングされていると私はこれを達成するために本当の素敵な「Rubyway」を見つけるためには至っていません。何年もの間、私は既に2テーブルメソッドで使用しているものを使用した例を見てきましたが、システムが多くのカテゴリと100のようなサブカテゴリを取得すると処理に影響を与えるため、これは直感的ではありません。私はいつも持っていた問題は、モデルとどのレコードが同じテーブル上のレコードに属することができることを実現するためにシステムを取得することです誰もがuseingあるか
class CreateCategories < ActiveRecord::Migration[5.1] def change
create_table :categories do |t|
t.string :name
t.integer :parent_id
t.timestamps
end
end
end
のような1つのテーブルの方法を知っています。私は手動で達成することができましたが、レール管理のようなformtasticやその他の宝石がうまくいく場所を設定する方法は見つけられていません。
ダウン投票の理由は何ですか?下位票には理由が含まれるべきです。 –