![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 247 Pomógł: 9 Dołączył: 20.09.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Witam. Ostatnio eksperymentuje z Zendem i mam problem z relacjami. Wiem jak zrobić proste relacje ale nie wiem w jaki sposób zrobić o to przykłąd:
W pewnej relacji wybieramy jakieś rekordy z tabeli związanej ale chcemy do tego ograniczyć pewne żeczy np: jeżeli pole "ABC" != NULL czyli warunek where. Przykład: Tabela "Users" ||--->00 'images' Wybieramy 1 użytkownika i wszystkie jego obrazki ale nie wybieramy tych które mają wartość "active" == NULL Mam o to taki kod:
Wszystko fajnie wybiera ale właśnie chce jeszcze ograniczyć po przez jakieś wartośći. Z góry dziękuję. Chyba znalazłem swoją odpowiedź ale nie wiem czy dobrze że tak się robi. Mianowicie, żeby ograniczyć jeszcze w jakiś sposób trzeba skorzystać z metody 'select' z Zend_Db_Table_Select. Czyli jeżeli mamy:
Nie wiem tylko do czego służy to null w metodzie findDependentRowset(); Nie wiem czy jest to dobrze ale na pewno działa. Jak macie lepsze rozwiązania to chętnie posłucham. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 65 Pomógł: 2 Dołączył: 5.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Ja na twoim miejscu zrobiłbym relacje w samej bazie a zenda do tego bym nie pchał bo więcej się przy tym napocisz niż to warte. Na bazę poświecisz chwile, na te powiązania dużo więcej. Poza tym wydaje mi się że dużo wydajniejsze są relacje w bazie.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 9 Dołączył: 22.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
http://framework.zend.com/manual/en/zend.d...ationships.html
Tu masz opis tego po co jest drugi parametr. W skrócie Definiuje on regułę zależności która możesz zdefiniować. W 3 parametrze mozesz jeszcze dodawać select dodatkowego typu limity etc... Co do zrobienia tej samej relacji w bazie danych - to zależy na co stawiasz ![]() Jak chcesz mieć mapowanie obiektów pomiędzy PHP a bazą to idziesz w dobrym kierunku. Rozwiązanie o tyle wygodne, że jak nagle będziesz chciał któreś obiekty trzymać w innej bazie (albo na przykład w mongoDb) to wystarczy podstawić inny adapter i śmiga. Jak zrobić relacje w bazie danych to znacznie się ograniczysz. Ten post edytował Ges 14.10.2011, 15:04:16 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 10:02 |