Add web push subscription model
This commit is contained in:
parent
4e08f035d1
commit
32ab9267ec
|
@ -42,6 +42,7 @@ class User < ApplicationRecord
|
||||||
|
|
||||||
has_many :subscriptions, dependent: :destroy_async
|
has_many :subscriptions, dependent: :destroy_async
|
||||||
has_many :totp_recovery_codes, dependent: :destroy_async
|
has_many :totp_recovery_codes, dependent: :destroy_async
|
||||||
|
has_many :web_push_subscriptions, dependent: :destroy_async
|
||||||
|
|
||||||
has_one :profile, dependent: :destroy
|
has_one :profile, dependent: :destroy
|
||||||
has_one :theme, dependent: :destroy
|
has_one :theme, dependent: :destroy
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
class WebPushSubscription < ApplicationRecord
|
||||||
|
belongs_to :user
|
||||||
|
end
|
|
@ -0,0 +1,11 @@
|
||||||
|
class CreateWebPushSubscriptions < ActiveRecord::Migration[6.1]
|
||||||
|
def change
|
||||||
|
create_table :web_push_subscriptions do |t|
|
||||||
|
t.bigint :user_id, null: false
|
||||||
|
t.json :subscription
|
||||||
|
t.timestamps
|
||||||
|
end
|
||||||
|
|
||||||
|
add_index :web_push_subscriptions, :user_id
|
||||||
|
end
|
||||||
|
end
|
|
@ -382,5 +382,13 @@ ActiveRecord::Schema.define(version: 2022_12_27_065923) do
|
||||||
t.index ["user_id"], name: "index_users_roles_on_user_id"
|
t.index ["user_id"], name: "index_users_roles_on_user_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
create_table "web_push_subscriptions", force: :cascade do |t|
|
||||||
|
t.bigint "user_id", null: false
|
||||||
|
t.json "subscription"
|
||||||
|
t.datetime "created_at", precision: 6, null: false
|
||||||
|
t.datetime "updated_at", precision: 6, null: false
|
||||||
|
t.index ["user_id"], name: "index_web_push_subscriptions_on_user_id"
|
||||||
|
end
|
||||||
|
|
||||||
add_foreign_key "profiles", "users"
|
add_foreign_key "profiles", "users"
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue