Skip to content

Database Schema

1onyng edited this page Nov 13, 2019 · 3 revisions

users

column name data type details
id integer not null, primary key
username string not null, unique, indexed
password_digest string not null
session_token string not null, unique, indexed
created_at datetime not null
updated_at datetime not null
  • has many: posts
  • has many: likes
  • has_many: comments
  • has many: followers
  • has many: follows

posts

column name data type details
id integer not null, primary key
title string not null, primary key
user_id integer not null, foreign key, indexed
created_at datetime not null
updated_at datetime not null
  • belongs to: author
  • has many: likes
  • has many: comments

comments

column name data type details
id integer not null, primary key
user_id integer not null, foreign key, indexed
post_id integer not null, foreign key, indexed
body text not null
created_at datetime not null
updated_at datetime not null
  • belongs to: author
  • belongs to: post

likes

column name data type details
id integer not null, primary key
user_id integer not null, foreign key, indexed
post_id integer not null, foreign key, indexed
created_at datetime not null
updated_at datetime not null
  • belongs to: liker
  • belongs to : post

follows

column name data type details
id integer not null, primary key
follower_id integer not null, foreign key, indexed
followed_id integer not null, foreign key, indexed
created_at datetime not null
updated_at datetime not null
  • belongs to: follower
  • belongs to: followed
Clone this wiki locally