创建嵌套类别列表

时间:2015-07-22 11:56:27

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-4

我正在创建一个在线零售店。我试图创建一个类别列表。我已经能够创建一个类别列表,但我需要在结构嵌套树中使用子类别。

如下:

手机

  • 苹果
  • HTC
  • 三星

笔记本

  • 索尼
  • 苹果

我现在已经试了8个小时而且一直卡住了。

我真的卡住了。

我试过Ancestry Gem。

你会如何详细地做到这一点,甚至一步一步会很棒?

有一些教程,但我找不到任何教程直接显示我想要做的事情。

我的数据库schema.rb按要求。

ActiveRecord::Schema.define(version: 20150721095122) do

  create_table "categories", force: :cascade do |t|
    t.string   "name"
    t.string   "ancestry"
    t.datetime "created_at", null: false
    t.datetime "updated_at", null: false
  end

  add_index "categories", ["ancestry"], name: "index_categories_on_ancestry"

  create_table "items", force: :cascade do |t|
    t.string   "title"
    t.decimal  "price"
    t.text     "description"
    t.datetime "created_at",         null: false
    t.datetime "updated_at",         null: false
    t.integer  "user_id"
    t.string   "image_file_name"
    t.string   "image_content_type"
    t.integer  "image_file_size"
    t.datetime "image_updated_at"
  end

  add_index "items", ["user_id", "created_at"], name: "index_items_on_user_id_and_created_at"
  add_index "items", ["user_id"], name: "index_items_on_user_id"

  create_table "users", force: :cascade do |t|
    t.string   "username"
    t.string   "email"
    t.datetime "created_at",                          null: false
    t.datetime "updated_at",                          null: false
    t.string   "password_digest"
    t.string   "remember_digest"
    t.boolean  "admin",               default: false
    t.string   "activation_digest"
    t.boolean  "activated",           default: false
    t.datetime "activated_at"
    t.string   "reset_digest"
    t.string   ">"
    t.datetime "reset_sent_at"
    t.string   "avatar_file_name"
    t.string   "avatar_content_type"
    t.integer  "avatar_file_size"
    t.datetime "avatar_updated_at"
    t.text     "description"
  end

  add_index "users", ["email"], name: "index_users_on_email", unique: true

end

1 个答案:

答案 0 :(得分:0)

你也可以尝试使用支持嵌套的awesome_nested_set gem,它有很好的文档,以及所有methods的列表