Database Schema - HiThereImCam/sneakerz GitHub Wiki

users


Column Data Type Details
id integer not null, primary key
username string not null, indexed, unique
email string not null, indexed, unique
password_digest string not null
session_token string not null, indexed, unique
created_at datetime not null
updated_at datetime not null
  • index on username, unique: true
  • index on email, unique: true
  • index on session_token, unique: true

shoes


Column Data Type Details
id integer not null, primary key
name string not null, indexed, unique
brand string not null, indexed, unique
description body not null
release_date date not null
sku string not null, indexed, unique
upper_material string not null, indexed
main_color string not null, indexed
colorway string not null
designer string not null, indexed
silhouette string not null, indexed
technology string not null, indexed
nickname string not null, indexed, unique
category string not null, indexed
created_at datetime not null
updated_at datetime not null
  • index on name, unique: true
  • index on brand, unique: true
  • index on sku, unique: true

brand


Column Data Type Details
id integer not null, p(k)
brand_name integer not null, f(k), unique, indexed
created_at integer not null
updated_at integer not null

stock


Column Data Type Details
id integer not null, p(k)
shoes_id integer not null, f(k), unique
quantity integer not null
created_at datetime not null
updated_at datetime not null

cart_items


Column Data Type Details
id integer not null, p(k)
cart_id integer not null, f(k), indexed
shoes_id integer not null, f(k), indexed
quantity integer not null
list_price integer not null
created_at datetime not null
updated_at datetime not null

cart


Column Data Type Details
id integer not null, p(k)
user_id integer not null, f(k), unique, indexed
cart_items_id integer not null, f(k), unique, indexed
created_at integer not null
updated_at integer not null
  • user_id references users
  • cart_items_id references cart_items