Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CakePHP] Konwencje nazewnictwa
Forum PHP.pl > Forum > PHP > Frameworki
Pulpetto
Hej, mam pewne wątpliwości jeżeli chodzi o nazewnictwo w Cake. Czytam dokumentacje i tutorial i w tutorialu dotyczącym tworzenia systemu postów Cake dokumentacja jest pewna nieścisłość, albo po prostu ja czegoś nie rozumiem.

Otóż jest tam napisane tak:
Cytat
Naming convention is very important in CakePHP. By naming our model Post, CakePHP can automatically infer that this model will be used in the PostsController, and will be tied to a database table called posts.


No i teraz jak to rozumieć. Czemu model nazywa się Post, ale tabela w bazie już posts a kontroler Posts. Czemu tu jest takie poplątanie z tym "s"? W jakiś dziwny sposób liczba mnoga nam się wkrada i co teraz? Jak nazwę model (może nie najlepiej) Auto i do niego będę chciał napisać kontroler to ma to być AutosController, a tabela autos? Troszkę to jak dla mnie dziwne, jest mi to ktoś w stanie wytłumaczyć ? smile.gif
kleus
Cytat(Pulpetto @ 24.02.2013, 21:29:35 ) *
Hej, mam pewne wątpliwości jeżeli chodzi o nazewnictwo w Cake. Czytam dokumentacje i tutorial i w tutorialu dotyczącym tworzenia systemu postów Cake dokumentacja jest pewna nieścisłość, albo po prostu ja czegoś nie rozumiem.

Otóż jest tam napisane tak:


No i teraz jak to rozumieć. Czemu model nazywa się Post, ale tabela w bazie już posts a kontroler Posts. Czemu tu jest takie poplątanie z tym "s"? W jakiś dziwny sposób liczba mnoga nam się wkrada i co teraz? Jak nazwę model (może nie najlepiej) Auto i do niego będę chciał napisać kontroler to ma to być AutosController, a tabela autos? Troszkę to jak dla mnie dziwne, jest mi to ktoś w stanie wytłumaczyć ? smile.gif


Tak już jest, ale...
Jezeli masz na mysli Auto jako samochod to idziesz zlym tropem. Jak wiadomo Cake jest po ANGIELSKU a w ang znacznie glowne auto to automatyczny.
tzw Auto w Polsce to tlumacząc na Angielski Car lub rzadziej spotykane Vehicle (bardziej znane jako pojazd).
Mozesz zrobić CarsController i model jako Car, albo VehiclesController i Model Vehicle

Jako ciekawostka (chyba nawet w book jest):
NazwaControllera, NazwaModelu, NazwaTabeli
PeopleController, Person, people

i jak widac nie ma zadnego 's' nigdzie smile.gif a cake i tak nawiaze wspolprace controllera modelu i znajdzie tabele w bazie danych
Pulpetto
Może Auto było z goła złym przykładem, po prostu chciałem zobaczyć czy to chodzi o to, że Cake rozróżnia wyrazy z liczbą mnogą itd
I okazuje się, że tak smile.gif
Dzięki za pomoc!

Oczywiście nazwy stosuję po angielsku natomiast to był tylko jaskrawy przykład, nie jestem w stanie sobie wyobrazić, że robię kontroler i nazywam go posty, a nie posts smile.gif

Czyli ogólnie podsumowując: Model liczba pojedyncza i kontroler liczba mnoga + Controller

Jeszcze raz dzięki za wyjaśnienie smile.gif
kicaj
Tutaj o konwencji na przykładzie 'people': http://book.cakephp.org/2.0/en/getting-sta...iew-conventions
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.