mirror of
https://github.com/usetrmnl/terminus.git
synced 2026-08-13 14:29:27 -07:00
Added membership table migration
Necessary to associate accounts with users. Milestone: minor
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
ROM::SQL.migration do
|
||||
change do
|
||||
create_table :membership do
|
||||
primary_key :id
|
||||
|
||||
foreign_key :account_id,
|
||||
:account,
|
||||
index: true,
|
||||
null: false,
|
||||
on_delete: :cascade,
|
||||
on_update: :cascade
|
||||
|
||||
foreign_key :user_id,
|
||||
:user,
|
||||
index: true,
|
||||
null: false,
|
||||
on_delete: :cascade,
|
||||
on_update: :cascade
|
||||
|
||||
column :created_at, :timestamp, null: false, default: Sequel::CURRENT_TIMESTAMP
|
||||
column :updated_at, :timestamp, null: false, default: Sequel::CURRENT_TIMESTAMP
|
||||
end
|
||||
end
|
||||
end
|
||||
+69
-3
@@ -2,7 +2,7 @@
|
||||
-- PostgreSQL database dump
|
||||
--
|
||||
|
||||
\restrict aXuLSArImOqffdidwihp5xHlzc8Q3ailMXtQZfVyAysvnpVWDPAQsLm75Ltvod4
|
||||
\restrict YMOuZzdXNX9KmsJiPy018G8JeZqM9woMUF8S7bMNuf66j7qCdhQum6EVxFlMutt
|
||||
|
||||
-- Dumped from database version 18.0
|
||||
-- Dumped by pg_dump version 18.0
|
||||
@@ -304,6 +304,33 @@ ALTER TABLE public.firmware ALTER COLUMN id ADD GENERATED BY DEFAULT AS IDENTITY
|
||||
);
|
||||
|
||||
|
||||
--
|
||||
-- Name: membership; Type: TABLE; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE TABLE public.membership (
|
||||
id integer NOT NULL,
|
||||
account_id integer NOT NULL,
|
||||
user_id integer NOT NULL,
|
||||
created_at timestamp without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
updated_at timestamp without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL
|
||||
);
|
||||
|
||||
|
||||
--
|
||||
-- Name: membership_id_seq; Type: SEQUENCE; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
ALTER TABLE public.membership ALTER COLUMN id ADD GENERATED BY DEFAULT AS IDENTITY (
|
||||
SEQUENCE NAME public.membership_id_seq
|
||||
START WITH 1
|
||||
INCREMENT BY 1
|
||||
NO MINVALUE
|
||||
NO MAXVALUE
|
||||
CACHE 1
|
||||
);
|
||||
|
||||
|
||||
--
|
||||
-- Name: model; Type: TABLE; Schema: public; Owner: -
|
||||
--
|
||||
@@ -641,6 +668,14 @@ ALTER TABLE ONLY public.firmware
|
||||
ADD CONSTRAINT firmwares_version_key UNIQUE (version);
|
||||
|
||||
|
||||
--
|
||||
-- Name: membership membership_pkey; Type: CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
ALTER TABLE ONLY public.membership
|
||||
ADD CONSTRAINT membership_pkey PRIMARY KEY (id);
|
||||
|
||||
|
||||
--
|
||||
-- Name: model model_label_key; Type: CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
@@ -857,6 +892,20 @@ CREATE INDEX device_logs_wifi_status_index ON public.device_log USING btree (wif
|
||||
CREATE INDEX firmwares_attachment_data_index ON public.firmware USING gin (attachment_data);
|
||||
|
||||
|
||||
--
|
||||
-- Name: membership_account_id_index; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX membership_account_id_index ON public.membership USING btree (account_id);
|
||||
|
||||
|
||||
--
|
||||
-- Name: membership_user_id_index; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX membership_user_id_index ON public.membership USING btree (user_id);
|
||||
|
||||
|
||||
--
|
||||
-- Name: model_kind_index; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
@@ -965,6 +1014,22 @@ ALTER TABLE ONLY public.device
|
||||
ADD CONSTRAINT devices_playlist_id_fkey FOREIGN KEY (playlist_id) REFERENCES public.playlist(id) ON UPDATE CASCADE ON DELETE SET NULL;
|
||||
|
||||
|
||||
--
|
||||
-- Name: membership membership_account_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
ALTER TABLE ONLY public.membership
|
||||
ADD CONSTRAINT membership_account_id_fkey FOREIGN KEY (account_id) REFERENCES public.account(id) ON UPDATE CASCADE ON DELETE CASCADE;
|
||||
|
||||
|
||||
--
|
||||
-- Name: membership membership_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
ALTER TABLE ONLY public.membership
|
||||
ADD CONSTRAINT membership_user_id_fkey FOREIGN KEY (user_id) REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE;
|
||||
|
||||
|
||||
--
|
||||
-- Name: playlist playlist_current_item_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
@@ -1057,7 +1122,7 @@ ALTER TABLE ONLY public."user"
|
||||
-- PostgreSQL database dump complete
|
||||
--
|
||||
|
||||
\unrestrict aXuLSArImOqffdidwihp5xHlzc8Q3ailMXtQZfVyAysvnpVWDPAQsLm75Ltvod4
|
||||
\unrestrict YMOuZzdXNX9KmsJiPy018G8JeZqM9woMUF8S7bMNuf66j7qCdhQum6EVxFlMutt
|
||||
|
||||
SET search_path TO "$user", public;
|
||||
|
||||
@@ -1091,4 +1156,5 @@ INSERT INTO schema_migrations (filename) VALUES
|
||||
('20250916111723_add_citext_extension.rb'),
|
||||
('20250916111947_create_account.rb'),
|
||||
('20250916112018_create_rodauth_user.rb'),
|
||||
('20250916112035_create_rodauth_user_password_hash.rb');
|
||||
('20250916112035_create_rodauth_user_password_hash.rb'),
|
||||
('20250916112116_create_membership.rb');
|
||||
|
||||
Reference in New Issue
Block a user