Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Propel a nowe mozliwosci MySQL 5
Forum PHP.pl > Forum > PHP
Seth
Zastanawiam sie nad wyborem Propela jako mojej warstwy posredniej miedzy php a baza MySQL.

Jako, ze wykorzystuje baze MySQL 5 oraz tabele typu InnoDB, nie jestewm peiwen czy wybor tej biblioteki jest sluszny.

Raz, ze relacje mam juz ustawione i nie martwie sie o to, a dwa, ze chce wykorzystywac procedury skladowe, ktore nie wiem czy w Propelu moge obsluzyc (trzeba bylo by rozszerzyc wygenerowane klasy?) ?

Dopiero zaczynam uczyc sie tej biblioteki i przeczytalem juz kilka dokumentow, ale nadal nie wiem czy do mojego zastosowania bedzie to dobre.


Projekt to cos ala mini forum z zagniezdzona struktura sekcji.
Dodatkowo beda tam wystepowaly akcje, ktore beda potrzebowac uruchomienia kilku zapytan, ktore obsluze przez procedury skladowe oraz widoki.
Czy Propel sprawdzi sie tutaj?
SongoQ
Co do widokow to powinno byc to przezroczyste, ale wtedy ograniczasz sie do odczytu. Ogolnie propel z zalozenia opiera sie na tabelach (odczytywanie typ pol, gdzie wystepuja klucze itd)
LBO
Może popełniam błąd teraz, ale po co używać ORM, skoro MySQL5 ma wbudowaną obsługę relacji?
SongoQ
Cytat
Może popełniam błąd teraz, ale po co używać ORM, skoro MySQL5 ma wbudowaną obsługę relacji?


Chyba pojecia pomyliles. Wiekszosc baz jest typu relacyjnego wiec twoj post akurat do tego tematu nie pasuje.
Seth
SongoQ: uzywales moze juz tego w swoich projektach?
SongoQ
Z widokami, funkcjami i procedurami - nie.
splatch
Propel traktuje widoki jak tabele. Jeśli masz procedury składowe i triggery to nie ma problemu z ich używaniem, triggery lecą normalnie jak przy zwykłych zapytaniach a pozostałe funkcje możesz wywoływać przez pobranie połączenia. Nie ma co się obawiać rozszeżania klas, ponieważ nie wszystkie są nadpisywane.
  1. <?php // dla przykładu :)
  2. class UserPeer extends UserPeerBase {
  3.  
  4. public function doSelectOne(Criteria $criteria) {
  5. $conn = Propel::getConnection();
  6. $conn->execute('CALL myfunction()');
  7. return parent::doSelectOne($criteria);
  8. }
  9.  
  10. }
  11. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.