mirror of
https://github.com/pezkuwichain/pezkuwi-mobile-app.git
synced 2026-04-22 03:07:54 +00:00
auto-commit for 0e351f04-ba98-4f92-9afa-44d29a79ed05
This commit is contained in:
@@ -0,0 +1,70 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
"""
|
||||||
|
Create users table in Supabase via SQL
|
||||||
|
"""
|
||||||
|
|
||||||
|
import os
|
||||||
|
import requests
|
||||||
|
from dotenv import load_dotenv
|
||||||
|
from pathlib import Path
|
||||||
|
|
||||||
|
# Load environment variables
|
||||||
|
ROOT_DIR = Path(__file__).parent / "backend"
|
||||||
|
load_dotenv(ROOT_DIR / '.env')
|
||||||
|
|
||||||
|
SUPABASE_URL = os.environ.get('SUPABASE_URL')
|
||||||
|
SUPABASE_KEY = os.environ.get('SUPABASE_KEY')
|
||||||
|
|
||||||
|
# SQL to create users table
|
||||||
|
sql = """
|
||||||
|
-- Drop existing table if needed
|
||||||
|
DROP TABLE IF EXISTS public.users CASCADE;
|
||||||
|
|
||||||
|
-- Create users table
|
||||||
|
CREATE TABLE public.users (
|
||||||
|
id UUID PRIMARY KEY REFERENCES auth.users(id) ON DELETE CASCADE,
|
||||||
|
email TEXT UNIQUE NOT NULL,
|
||||||
|
first_name TEXT NOT NULL,
|
||||||
|
last_name TEXT NOT NULL,
|
||||||
|
phone TEXT NOT NULL,
|
||||||
|
referral_code TEXT,
|
||||||
|
language TEXT DEFAULT 'en',
|
||||||
|
tiki_count INTEGER DEFAULT 0,
|
||||||
|
trust_score INTEGER DEFAULT 0,
|
||||||
|
profile_image TEXT,
|
||||||
|
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
|
||||||
|
updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
|
||||||
|
);
|
||||||
|
|
||||||
|
-- Enable RLS
|
||||||
|
ALTER TABLE public.users ENABLE ROW LEVEL SECURITY;
|
||||||
|
|
||||||
|
-- Drop existing policies if they exist
|
||||||
|
DROP POLICY IF EXISTS "Service role has full access" ON public.users;
|
||||||
|
DROP POLICY IF EXISTS "Users can read own data" ON public.users;
|
||||||
|
|
||||||
|
-- Service role can do everything
|
||||||
|
CREATE POLICY "Service role has full access" ON public.users
|
||||||
|
FOR ALL USING (true);
|
||||||
|
|
||||||
|
-- Users can read their own data
|
||||||
|
CREATE POLICY "Users can read own data" ON public.users
|
||||||
|
FOR SELECT USING (auth.uid() = id);
|
||||||
|
"""
|
||||||
|
|
||||||
|
# Execute via Supabase SQL endpoint
|
||||||
|
url = f"{SUPABASE_URL}/rest/v1/rpc/exec_sql"
|
||||||
|
headers = {
|
||||||
|
"apikey": SUPABASE_KEY,
|
||||||
|
"Authorization": f"Bearer {SUPABASE_KEY}",
|
||||||
|
"Content-Type": "application/json",
|
||||||
|
}
|
||||||
|
|
||||||
|
# Try direct SQL execution via PostgREST
|
||||||
|
# Note: This might not work, we need to use the SQL Editor in Supabase Dashboard
|
||||||
|
print("⚠️ To create the users table, please run this SQL in Supabase SQL Editor:")
|
||||||
|
print("=" * 80)
|
||||||
|
print(sql)
|
||||||
|
print("=" * 80)
|
||||||
|
print("\n📍 Go to: https://vsyrpfiwhjvahofxwytr.supabase.co/project/_/sql/new")
|
||||||
|
print("Paste the SQL above and click 'Run'")
|
||||||
Reference in New Issue
Block a user