🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.php
Article #232424

Re: Symfony 4 - jak projektować bazę danych pod Doctrine?

#232424
From: Marek S
Date: Tue, 23 Apr 2019 20:10
46 lines
2928 bytes
W dniu 2019-04-23 o 19:51, Borys Pogoreło pisze:

> Zdecyduj się - albo chcesz mieć uniwersalny mechanizm albo narzędzie
> dedykowane funkcjom specyficznym dla Postgresa.

Chcę mieć ORM wspierający specyfikę Postgresa. Inne bazy mnie nie 
interesują. Nie zabiegam o kompatybilność z ubogimi krewnymi. Absolutnie 
nie to jest moim celem.

> Znów próbujesz działać na
> przekór narzędziu, którego przeznaczeniem jest stworzenie warstwy
> abstrakcji mapowanej następnie na struktury poszczególnych silników baz
> danych. W efekcie do dyspozycji masz tylko wspólną część, uzupełnioną
> logiką zaszytą w PHP.

Tę część zatem pominąć milczeniem możemy.

> Jeśli tak potrzebujesz tego polimorfizmu, to znajdź sobie coś do Postgresa,
> bo znów będziesz narzekać na ograniczenia, które sam wprowadzasz.

Nie rozumiem? Co to jest "coś" do Postgresa? Masz na myśli dedykowany 
ORM? Nie da się Doctrine tak oprogramować, by korzystała z ficzerów 
Postgresa?

>> Jakoś nie chce mi się wierzyć aby ORM nie potrafił zwyczajnie usunąć
>> rekordu z bazy i w tym celu generował nadmiarowe zapytania. Przekopałem
>> dokumentację Doctrine i nie znalazłem odpowiedzi.
> 
> Rozwiń skrót ORM. Z założenia operacje wykonujesz na obiekcie.

A mimo wszystko tenże ORM pozwala na użycie SQL'a w ramach własnych 
struktur... Tyle tylko, że samemu trzeba te parę linijek kodu 
niepotrzebnie dopisywać.

> 
> Laravel ma dodatkową metodę statyczną Model::destroy($id).

No ale my o Doctrine... Z Laravelem już się pożegnałem.

A właśnie, trafne spostrzeżenie! Więc po drugie, skoro Laravel zawiera 
taką metodę w swoim ORMie, to czy w świetle Twojej powyższej wypowiedzi 
to już nie jest ORM bo potrafi po ID kasować?

-- 
Pozdrawiam,
Marek
Technical Details
Message-ID: <q9nrgf$d0c$1@node1.news.atman.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
References: <q9foak$p72$1@node2.news.atman.pl> <slrnqboo9s.e87.wojciech.bancer@pl-test.org> <5cbf10a8$0$482$65785112@news.neostrada.pl> <q9ngu2$rla$1@node2.news.atman.pl> <szccfmi95el5$.xlp4ie6tp398.dlg@40tude.net>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
From: Marek S <precz@spamowi.com>
Newsgroups: pl.comp.lang.php
Subject: Re: Symfony 4 - jak projektować bazę danych
 pod Doctrine?
Date: Tue, 23 Apr 2019 22:10:48 +0200
Organization: ATMAN - ATM S.A.
Lines: 46
Message-ID: <q9nrgf$d0c$1@node1.news.atman.pl>
References: <q9foak$p72$1@node2.news.atman.pl> <slrnqboo9s.e87.wojciech.bancer@pl-test.org> <5cbf10a8$0$482$65785112@news.neostrada.pl> <q9ngu2$rla$1@node2.news.atman.pl> <szccfmi95el5$.xlp4ie6tp398.dlg@40tude.net>
NNTP-Posting-Host: 89-70-94-204.dynamic.chello.pl
Mime-Version: 1.0
X-Trace: node1.news.atman.pl 1556050255 13324 89.70.94.204 (23 Apr 2019 20:10:55 GMT)
X-Complaints-To: usenet@atman.pl
NNTP-Posting-Date: Tue, 23 Apr 2019 20:10:55 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1
In-Reply-To: <szccfmi95el5$.xlp4ie6tp398.dlg@40tude.net>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit