Sobes.tech
Senior

Kokios lentelės ir laukai yra reikalingi PostgreSQL duomenų bazėje šiam pranešėjui?

sobes.tech AI

Atsakymas iš AI

PostgreSQL-ā par komunikatoru parasti ir nepieciešamas šādas tabulas un lauki:

  1. users — glabā informāciju par lietotājiem:
id SERIAL PRIMARY KEY,
username VARCHAR UNIQUE NOT NULL,
email VARCHAR UNIQUE NOT NULL,
hashed_password TEXT NOT NULL,
created_at TIMESTAMP DEFAULT now()
  1. conversations — čati vai dialogi:
id SERIAL PRIMARY KEY,
title VARCHAR,
created_at TIMESTAMP DEFAULT now()
  1. conversation_members — saite starp lietotājiem un čatiem:
id SERIAL PRIMARY KEY,
conversation_id INT REFERENCES conversations(id),
user_id INT REFERENCES users(id),
joined_at TIMESTAMP DEFAULT now()
  1. messages — ziņas čatos:
id SERIAL PRIMARY KEY,
conversation_id INT REFERENCES conversations(id),
sender_id INT REFERENCES users(id),
content TEXT NOT NULL,
sent_at TIMESTAMP DEFAULT now(),
edited_at TIMESTAMP

Papildus var pievienot tabulas pielikumiem, ziņu statusiem utt., bet šīs nodrošina pamata funkcionalitāti messengerim.