mirror of
https://github.com/SrIzan10/hc-harbor.git
synced 2026-05-01 10:45:21 +00:00
Initial new activity log (#562)
This commit is contained in:
25
db/migrate/20251003215127_create_activities.rb
Normal file
25
db/migrate/20251003215127_create_activities.rb
Normal file
@@ -0,0 +1,25 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
# Migration responsible for creating a table with activities
|
||||
class CreateActivities < ActiveRecord::Migration[6.1]
|
||||
def self.up
|
||||
create_table :activities do |t|
|
||||
t.belongs_to :trackable, polymorphic: true
|
||||
t.belongs_to :owner, polymorphic: true
|
||||
t.string :key
|
||||
t.text :parameters
|
||||
t.belongs_to :recipient, polymorphic: true
|
||||
|
||||
t.timestamps
|
||||
end
|
||||
|
||||
add_index :activities, %i[trackable_id trackable_type]
|
||||
add_index :activities, %i[owner_id owner_type]
|
||||
add_index :activities, %i[recipient_id recipient_type]
|
||||
end
|
||||
|
||||
# Drop table
|
||||
def self.down
|
||||
drop_table :activities
|
||||
end
|
||||
end
|
||||
21
db/schema.rb
generated
21
db/schema.rb
generated
@@ -10,13 +10,32 @@
|
||||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema[8.0].define(version: 2025_10_03_161836) do
|
||||
ActiveRecord::Schema[8.0].define(version: 2025_10_03_215127) do
|
||||
create_schema "pganalyze"
|
||||
|
||||
# These are extensions that must be enabled in order to support this database
|
||||
enable_extension "pg_catalog.plpgsql"
|
||||
enable_extension "pg_stat_statements"
|
||||
|
||||
create_table "activities", force: :cascade do |t|
|
||||
t.string "trackable_type"
|
||||
t.bigint "trackable_id"
|
||||
t.string "owner_type"
|
||||
t.bigint "owner_id"
|
||||
t.string "key"
|
||||
t.text "parameters"
|
||||
t.string "recipient_type"
|
||||
t.bigint "recipient_id"
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
t.index ["owner_id", "owner_type"], name: "index_activities_on_owner_id_and_owner_type"
|
||||
t.index ["owner_type", "owner_id"], name: "index_activities_on_owner"
|
||||
t.index ["recipient_id", "recipient_type"], name: "index_activities_on_recipient_id_and_recipient_type"
|
||||
t.index ["recipient_type", "recipient_id"], name: "index_activities_on_recipient"
|
||||
t.index ["trackable_id", "trackable_type"], name: "index_activities_on_trackable_id_and_trackable_type"
|
||||
t.index ["trackable_type", "trackable_id"], name: "index_activities_on_trackable"
|
||||
end
|
||||
|
||||
create_table "admin_api_keys", force: :cascade do |t|
|
||||
t.bigint "user_id", null: false
|
||||
t.text "name", null: false
|
||||
|
||||
Reference in New Issue
Block a user