Closed interduo closed 1 year ago
Można (dodam, że nic się nie zmienia w bazie czyli podbić, żeby podbić).
@smiecielica-billtech proszę w https://github.com/BillTechPL/lms-billtech-plugin/pull/121
@interduo nie, chodziło mi o dodanie tych constrainow, bo tak to chyba jest opcja ze tamta migracja nie zadziala jesli w podstawowej wersji bedzie data podbita
@smiecielica-billtech nie rozumiem - których constraintów? pokaż proszę odniesienie do konkretnej linii z kodu PR to może zaczaję
Może chodzi Ci o stałe/consts? Jeśli tak to: https://github.com/BillTechPL/lms-billtech-plugin/compare/master...interduo:lms-billtech-plugin:patch-12
Chodzi o dodanie do tej inicjalnej sqlki tego kodu poniżej, bo teraz tego nie ma. A jak w niej bedzie wysoka wersja bazy to możliwe, że ta migracja która to robi nie zostanie odpalona.
ALTER TABLE billtech_payment_links DROP CONSTRAINT billtech_payment_links_src_cash_id_fkey, ADD CONSTRAINT billtech_payment_links_src_cash_id_fkey FOREIGN KEY (src_cash_id) REFERENCES cash ON DELETE SET NULL
ALTER TABLE billtech_payment_links DROP CONSTRAINT billtech_payment_links_src_document_id_fkey, ADD CONSTRAINT billtech_payment_links_src_document_id_fkey FOREIGN KEY (src_document_id) REFERENCES documents ON DELETE SET NULL
Nie trzeba - DROP TABLE IF EXISTS billtech_payment_links usunie ten constraint.
@smiecielica-billtech przy pierwszym tworzeniu DB pojawi się ten constraint bo jest kod: https://github.com/BillTechPL/lms-billtech-plugin/blob/master/doc/lms.pgsql#L38-L39
więc oprócz tego PR sugeruję wrzucić:
Będzie wtedy komplet zmian. Prawda?
@smiecielica-billtech wypuścisz to dzisiaj? Wrzucam wtyczkę u ProIP i od razu stestował bym najnowszy stan repo.
@interduo wypuszczę dziś, przy czym wciąż nie do końca rozumiem gdzie ten constraint miałby się utworzyć, ja są tam dodawane tylko indeksy. Jest on ważny ze względu na to, że dzięki niemu automatycznie cancellowane do linki do usunietych cash/documents.
Jeśli się nie mylę to constraint się utworzy natomiast jego nazwa będzie 'automatycznie wymyślona' - jeśli chcesz ją nadać jawnie trzeba zamiast:
customer_id integer NOT NULL REFERENCES customers(id) ON DELETE CASCADE,
src_cash_id integer REFERENCES cash(id) ON DELETE SET NULL,
src_document_id integer REFERENCES documents(id) ON DELETE SET NULL,
zrobić:
customer_id integer NOT NULL
CONSTRAINT billtech_payment_links_customer_id_fkey REFERENCES customers(id) ON DELETE CASCADE,
src_cash_id integer
CONSTRAINT billtech_payment_links_src_cash_id_fkey REFERENCES cash(id) ON DELETE SET NULL,
src_document_id integer
CONSTRAINT billtech_payment_links_src_document_id_fkey REFERENCES documents(id) ON DELETE SET NULL,
Wpuszczę to w następnym PR - obecny i tak już mocno spuchł.
@interduo wydaje mi się że aby podbić wersje db należałoby dodać także sql'kę z tej migracji: https://github.com/BillTechPL/lms-billtech-plugin/blob/96b9025921254ac18c507b3ed28f48d17bfb6429/lib/upgradedb/postgres.2022011200.php