Skip to content

membership_request

A request to join a community with the REQUIRES_APPROVAL join policy. Invariant (application): the decider is the community’s owner or a member of its admin group.

Name Type Default Nullable Children Parents Comment
id bigint nextval(‘membership_request_seq’::regclass) false
public_id uuid gen_random_uuid() false
community_id bigint false public.community
proposed_by_user_id bigint false public.app_user
status varchar(16) ‘PENDING’::character varying false
decided_by_user_id bigint true public.app_user
decided_at timestamp with time zone true
created_at timestamp with time zone now() false
updated_at timestamp with time zone true
version bigint false
Name Type Definition
chk_membership_request_decided CHECK CHECK (((((status)::text = ‘PENDING’::text) AND (decided_at IS NULL)) OR (((status)::text <> ‘PENDING’::text) AND (decided_at IS NOT NULL))))
chk_membership_request_status CHECK CHECK (((status)::text = ANY ((ARRAY[‘PENDING’::character varying, ‘APPROVED’::character varying, ‘REJECTED’::character varying])::text[])))
fk_membership_request_decided_by_user_id FOREIGN KEY FOREIGN KEY (decided_by_user_id) REFERENCES app_user(id)
fk_membership_request_proposed_by_user_id FOREIGN KEY FOREIGN KEY (proposed_by_user_id) REFERENCES app_user(id)
fk_membership_request_community_id FOREIGN KEY FOREIGN KEY (community_id) REFERENCES community(id)
membership_request_pkey PRIMARY KEY PRIMARY KEY (id)
uq_membership_request_public_id UNIQUE UNIQUE (public_id)
Name Definition
membership_request_pkey CREATE UNIQUE INDEX membership_request_pkey ON public.membership_request USING btree (id)
uq_membership_request_public_id CREATE UNIQUE INDEX uq_membership_request_public_id ON public.membership_request USING btree (public_id)
ix_membership_request_community_id CREATE INDEX ix_membership_request_community_id ON public.membership_request USING btree (community_id)
ix_membership_request_proposed_by_user_id CREATE INDEX ix_membership_request_proposed_by_user_id ON public.membership_request USING btree (proposed_by_user_id)
ix_membership_request_decided_by_user_id CREATE INDEX ix_membership_request_decided_by_user_id ON public.membership_request USING btree (decided_by_user_id)
uq_membership_request_community_id_proposed_by_user_id_pending CREATE UNIQUE INDEX uq_membership_request_community_id_proposed_by_user_id_pending ON public.membership_request USING btree (community_id, proposed_by_user_id) WHERE ((status)::text = ‘PENDING’::text)

ER diagram


Generated by tbls