フリマアプリのメルカリのようなカテゴリを実装したいです。
作り方を教えてください
カテゴリは親カテゴリと子カテゴリで構成されるものとし、親と子どちらにも属するものとします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
以下のページでは、 商品が 1 カテゴリーに属する例が示されています。
- Rails で商品とカテゴリ http://keitanxkeitan.hatenablog.com/entry/2014/05/29/003954
以下のページでは、2段のカテゴリーの設定例がしめされています。(ポリモーフィックについては無視してよいです)
- Railsのポリモーフィックアソシエーション http://o.inchiki.jp/obbr/149
上のページの例も踏まえて次のような3つの案を考えました。
案 1:
Item に category0_id, cateory1_id の2つの項目を持たせる。
category0_id が親カテゴリーの id, category1_id が 子カテゴリーの id を示すようにする。
案 2:
(item, カテゴリー、サブカテゴリー) の組を保持するテーブルを作る。
ItemCategory
item_id // item の id
category0_id // 親カテゴリーの id
category1_id // サブカテゴリーの id
のようにする。
案 3:
Item は複数のカテゴリーに属することにする。
カテゴリーは、親カテゴリー、子カテゴリー、アイテムへの参照を保持するようにする。
Item と Category の次の関係を設定する。
Item
has_many :categories # 所属するカテゴリーを保持する
Category
has_many :items # アイテムを保持する。
has_many :categories # サブカテゴリーを保持する
belongs_to: category # 親カテゴリーを保持する
案2 が nakita の検討案に近いものだと思います。
案3 だと、3段、4段 といった不定長さのカテゴリー構成に対応できます。
基礎知識として Rails のチュートリアルでよくとりあげられている
ブログサイトでの 記事とカテゴリ、記事とコメント といったような 1対多、多対多のデータを扱う例
を学習・理解すると良いと思います。
投稿2014/11/24 14:33
総合スコア22324
0
... カテゴリは親カテゴリと子カテゴリで構成されるものとし、親と子どちらにも属するもの...
カテゴリーの構造がイメージできるような具体例を示していただけると、回答がつきやすくなると思います。
現状の質問文の内容では、nakita さんがどこまで DB 構造について検討済みなのか? rails の version は? activerecord の asociation についてどの程度慣れ親しんでいるのか? ... など いろいろ背景が不明で、回答をしにくいです。
投稿2014/11/24 10:27
総合スコア22324
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2014/11/25 11:41
2014/11/25 13:29
退会済みユーザー
2014/11/26 06:16