Barazo AppView backend
barazo.forum
1CREATE TABLE "pages" (
2 "id" text PRIMARY KEY NOT NULL,
3 "slug" text NOT NULL,
4 "title" text NOT NULL,
5 "content" text NOT NULL,
6 "status" text DEFAULT 'draft' NOT NULL,
7 "meta_description" text,
8 "parent_id" text,
9 "sort_order" integer DEFAULT 0 NOT NULL,
10 "community_did" text NOT NULL,
11 "created_at" timestamp with time zone DEFAULT now() NOT NULL,
12 "updated_at" timestamp with time zone DEFAULT now() NOT NULL
13);
14--> statement-breakpoint
15ALTER TABLE "pages" ENABLE ROW LEVEL SECURITY;--> statement-breakpoint
16ALTER TABLE "pages" ADD CONSTRAINT "pages_parent_id_fk" FOREIGN KEY ("parent_id") REFERENCES "public"."pages"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
17CREATE UNIQUE INDEX "pages_slug_community_did_idx" ON "pages" USING btree ("slug","community_did");--> statement-breakpoint
18CREATE INDEX "pages_community_did_idx" ON "pages" USING btree ("community_did");--> statement-breakpoint
19CREATE INDEX "pages_parent_id_idx" ON "pages" USING btree ("parent_id");--> statement-breakpoint
20CREATE INDEX "pages_status_community_did_idx" ON "pages" USING btree ("status","community_did");--> statement-breakpoint
21CREATE POLICY "tenant_isolation" ON "pages" AS PERMISSIVE FOR ALL TO "barazo_app" USING (community_did = current_setting('app.current_community_did', true)) WITH CHECK (community_did = current_setting('app.current_community_did', true));