• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Laravel - Model

Object Storage Arubacloud
0 głosów
180 wizyt
pytanie zadane 8 sierpnia 2020 w PHP przez mi-20 Stary wyjadacz (13,190 p.)

Cześć, jak sądzicie, czy w Laravelowym modelu warto robić getery tak jak ma to miejsce w symfony i to ich później używać w kodzie zamiast odwoływać się do nazw pól w bazie?

$fillable = [
'name'
]

public function getName(): string
{
   return $this->name
}

 

2 odpowiedzi

0 głosów
odpowiedź 8 sierpnia 2020 przez Ehlert Ekspert (212,670 p.)
Symfony w żadnym wypadku nie wymusza na Tobie istnienia getterów. No chyba że pakujesz encje prosto do formularzy, albo szablonów, co przy większych projektach jest niepolecane.

Zastanów się czy istnieje rzeczywista potrzeba wyciągania tej danej z modelu. Jeśli tak, to dopisz getter.
0 głosów
odpowiedź 3 grudnia 2020 przez mtk3d Nałogowiec (46,690 p.)
Getterów używa się w przypadku kiedy np. masz pole prywatne i chcesz udostępnić na zewnątrz jego wartość, ale uniemożliwić jego niekontrolowaną zmianę. W przypadku modeli eloquenta wszystko jest publiczne, więc nie ma to znaczenia.

W większym zespole możesz przyjąć konwencję, że dane można wyciągać tylko przy użyciu getterów, żeby nie zmienić ich przez przypadek. Nadal jednak wszystkie pola będą publiczne, więc to zabezpiecznenie nie będzie sprawdzane przez interpreter tak jak w przypadku rzeczywistych pól prywatnych i nadal będzie możliwość ingerowania w parametry bezpośrednio.

Jeśli chcesz użyć gettera do połączenia jakichś dwóch pól, np. imienia i nazwiska, czy innych modyfikacji, to lepiej użyć customowych atrybutów https://laravel.com/docs/8.x/eloquent-mutators#defining-an-accessor

Podobne pytania

0 głosów
1 odpowiedź 618 wizyt
pytanie zadane 26 marca 2018 w PHP przez Proth Początkujący (310 p.)
0 głosów
1 odpowiedź 975 wizyt
pytanie zadane 3 lutego 2018 w PHP przez mi-20 Stary wyjadacz (13,190 p.)
0 głosów
1 odpowiedź 511 wizyt
pytanie zadane 5 lutego 2018 w PHP przez mi-20 Stary wyjadacz (13,190 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...