Pracuje obecnie nad projektem e-commerce. Zalozmy, ze musze stworzyc tabele, ktora ma przechowywac kolor produkty. Ale mamy wartosci domyslne na poziomie firmy i/lub poziomie kategorii. Np firma=czerwony, kategoria1=zielony.Teraz tworzne produkt o kategoria1 czyli kolor zielony. Pozniej tworze produkt z kategoria2 (nie ma wartosci domyslnej) czyli kolor czerwony.
Nastepnie, wartosci domyslne tez moga zostac zmienione. Wiec zmieniamy kolor firmy z czerwonego na rozowy. Oczywiscie dwa wczesniej utworzony produkty musza utrzymac swoje kolory. Wartosci domyslne sa aplikowane wylacznie do nowch produkty, ew kolor mozna zminic z wartosci domyslna na jaka sie chce z poziomy produktu.
Jakis pomysl jak utowrzyc do tego tabele? Na razie mam cos takiego. Problem jest tego typu, ze mam 2-3 podejscia do rozwiazania tematu. Chce utrzymac wszsytko w jak najprostszej strukturze, ale tez zeby bylo latwo dodac nowe elemety.
CREATE TYPE item_colour_types AS ENUM ('FIRMA', 'KATEGORIA', 'PRODUKT');
create table item_colour
(
id integer not null primary key,
company_id integer,
type item_colour_types not null,
type_id integer not null,
colour varchar(60) not null
);