✨ Problems
This commit is contained in:
		| @@ -2,18 +2,13 @@ create table public.profiles ( | ||||
|   id uuid not null references auth.users on delete cascade, | ||||
|   username varchar(64), | ||||
|   nickname varchar(256), | ||||
|   school_id int8, | ||||
|  | ||||
|   school int8, | ||||
|   primary key (id) | ||||
| ); | ||||
|  | ||||
| alter table public.profiles enable row level security; | ||||
|  | ||||
| create policy "Public profiles are viewable by everyone." on profiles | ||||
|   for select using (true); | ||||
|  | ||||
| create policy "Users can insert their own profile." on profiles | ||||
|   for insert with check (auth.uid() = id); | ||||
|  | ||||
| create policy "Users can update own profile." on profiles | ||||
|   for update using (auth.uid() = id); | ||||
| create policy "Public profiles are viewable by everyone." on profiles for | ||||
| select using (true); | ||||
| create policy "Users can insert their own profile." on profiles for | ||||
| insert with check (auth.uid() = id); | ||||
| create policy "Users can update own profile." on profiles for | ||||
| update using (auth.uid() = id); | ||||
| @@ -1,19 +1,30 @@ | ||||
| create table | ||||
|   public.problems ( | ||||
|     id bigint generated by default as identity, | ||||
|     title text not null, | ||||
|     description text not null, | ||||
|     type character varying not null, | ||||
|     tags character varying[] null, | ||||
|     author uuid null, | ||||
|     is_draft boolean null default true, | ||||
|     is_hidden boolean null default false, | ||||
|     created_at timestamp with time zone null default now(), | ||||
|     constraint problems_pkey primary key (id), | ||||
|     constraint problems_author_fkey foreign key (author) references auth.users (id) | ||||
|   ) tablespace pg_default; | ||||
|  | ||||
| create table public.problems ( | ||||
|   id bigint generated by default as identity, | ||||
|   title text not null, | ||||
|   description text not null, | ||||
|   type character varying not null, | ||||
|   tags character varying [] null, | ||||
|   author uuid null, | ||||
|   metadata jsonb null, | ||||
|   is_draft boolean null default true, | ||||
|   is_hidden boolean null default false, | ||||
|   created_at timestamp with time zone null default now(), | ||||
|   constraint problems_pkey primary key (id), | ||||
|   constraint problems_author_fkey foreign key (author) references auth.users (id) | ||||
| ) tablespace pg_default; | ||||
| alter table public.problems enable row level security; | ||||
|  | ||||
| create policy "Public problems are viewable by everyone." on problems | ||||
|   for select using (true); | ||||
| create policy "Public problems are viewable by everyone." on problems for | ||||
| select using (true); | ||||
| create table public.problem_cases ( | ||||
|   id bigint generated by default as identity, | ||||
|   spec jsonb not null, | ||||
|   limitations jsonb not null, | ||||
|   answer jsonb not null, | ||||
|   problem int8 not null, | ||||
|   is_hidden bool not null default true, | ||||
|   constraint problem_cases_pkey primary key (id), | ||||
|   constraint problem_cases_author_fkey foreign key (problem) references public.problems (id) | ||||
| ) tablespace pg_default; | ||||
| alter table public.problem_cases enable row level security; | ||||
| create policy "Public problem cases are viewable by everyone." on problem_cases for | ||||
| select using (is_hidden = false); | ||||
							
								
								
									
										14
									
								
								supabase/migrations/20231210135930_challenges.sql
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								supabase/migrations/20231210135930_challenges.sql
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| create table public.challenges ( | ||||
|   id bigint generated by default as identity, | ||||
|   answers jsonb not null, | ||||
|   details jsonb not null, | ||||
|   author uuid not null, | ||||
|   problem int8 not null, | ||||
|   status varchar(256) not null, | ||||
|   created_at timestamp with time zone null default now(), | ||||
|   constraint challenges_pkey primary key (id), | ||||
|   constraint challenges_author_fkey foreign key (author) references auth.users (id), | ||||
|   constraint challenges_problem_fkey foreign key (problem) references public.problems (id) | ||||
| ) tablespace pg_default; | ||||
| alter table public.challenges enable row level security; | ||||
| create policy "The challagers can see their challenges" on "public"."challenges" for select to public using (auth.uid() = author) with check (true) | ||||
		Reference in New Issue
	
	Block a user