-- User Ratings CREATE TABLE user_ratings ( id BIGSERIAL PRIMARY KEY, user_id BIGINT REFERENCES users(id) ON DELETE CASCADE, movie_id BIGINT REFERENCES movies(id) ON DELETE CASCADE, rating SMALLINT CHECK (rating BETWEEN 1 AND 5), review_text TEXT, created_at TIMESTAMP DEFAULT now(), UNIQUE(user_id, movie_id) );
-- Movies CREATE TABLE movies ( id BIGSERIAL PRIMARY KEY, title TEXT NOT NULL, year INT, description TEXT, poster_url TEXT, imdb_id TEXT UNIQUE, runtime_minutes INT, language TEXT, genre TEXT[], director TEXT, cast TEXT[], rating_imdb NUMERIC(2,1), rating_user_avg NUMERIC(2,1) DEFAULT 0, rating_user_cnt INT DEFAULT 0, created_at TIMESTAMP DEFAULT now() ); hindimovieslink
CREATE TABLE movie_links ( id BIGSERIAL PRIMARY KEY, movie_id BIGINT REFERENCES movies(id) ON DELETE CASCADE, platform_id BIGINT REFERENCES platforms(id), url TEXT NOT NULL, price_usd NUMERIC(5,2), price_local NUMERIC(5,2), currency TEXT, is_free BOOLEAN DEFAULT FALSE, last_checked TIMESTAMP, UNIQUE(movie_id, platform_id) ); -- User Ratings CREATE TABLE user_ratings ( id
class Config: orm_mode = True