create table post (
id serial primary key,
name varchar(100) not null,
url text, -- These are both optional, a post can just have a title
body text,
creator_id int references user_ on update cascade on delete cascade not null,
community_id int references community on update cascade on delete cascade not null,
published timestamp not null default now(),
updated timestamp
);
create table post_like (
post_id int references post on update cascade on delete cascade not null,
user_id int references user_ on update cascade on delete cascade not null,
score smallint not null, -- -1, or 1 for dislike, like, no row for no opinion
unique(post_id, user_id)