From ee8671455c3ca91414e5a887a6a29007d895cb3c Mon Sep 17 00:00:00 2001 From: Joe Freund Date: Wed, 5 Jun 2024 17:43:05 -0700 Subject: [PATCH] Added saved searches model --- db/migrate/20240606002826_create_saved_searches.rb | 10 ++++++++++ db/schema.rb | 14 +++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 db/migrate/20240606002826_create_saved_searches.rb diff --git a/db/migrate/20240606002826_create_saved_searches.rb b/db/migrate/20240606002826_create_saved_searches.rb new file mode 100644 index 00000000..19c1bf3c --- /dev/null +++ b/db/migrate/20240606002826_create_saved_searches.rb @@ -0,0 +1,10 @@ +class CreateSavedSearches < ActiveRecord::Migration[6.1] + def change + create_table :saved_searches do |t| + t.references :user, foreign_key: true + t.string :name + t.jsonb :search, null: false, default: '{}' + t.timestamps + end + end +end diff --git a/db/schema.rb b/db/schema.rb index 197dc364..ebb08cd1 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 2024_04_04_032142) do +ActiveRecord::Schema.define(version: 2024_06_06_002826) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -168,6 +168,7 @@ t.datetime "updated_at", null: false t.integer "feature_rank" t.boolean "is_parent", default: false + t.integer "parent_id" t.index ["feature_rank"], name: "index_eligibilities_on_feature_rank" t.index ["name"], name: "index_eligibilities_on_name", unique: true end @@ -358,6 +359,15 @@ t.index ["feedback_id"], name: "index_reviews_on_feedback_id" end + create_table "saved_searches", force: :cascade do |t| + t.bigint "user_id" + t.string "name" + t.jsonb "search", default: "{}", null: false + t.datetime "created_at", precision: 6, null: false + t.datetime "updated_at", precision: 6, null: false + t.index ["user_id"], name: "index_saved_searches_on_user_id" + end + create_table "schedule_days", force: :cascade do |t| t.datetime "created_at", precision: 6, null: false t.datetime "updated_at", precision: 6, null: false @@ -487,6 +497,7 @@ add_foreign_key "change_requests", "resources" add_foreign_key "contacts", "resources" add_foreign_key "contacts", "services" + add_foreign_key "eligibilities", "eligibilities", column: "parent_id" add_foreign_key "feedbacks", "resources" add_foreign_key "feedbacks", "services" add_foreign_key "field_changes", "change_requests" @@ -506,6 +517,7 @@ add_foreign_key "resources_sites", "resources" add_foreign_key "resources_sites", "sites" add_foreign_key "reviews", "feedbacks" + add_foreign_key "saved_searches", "users" add_foreign_key "schedule_days", "schedules" add_foreign_key "schedules", "resources" add_foreign_key "schedules", "services"