Ma znam, samo primjer navodim, vjerojatno se neće ništa mijenjati, ali eto moram spomenuti
Meni se isto sviđa takav dizajn, 1 model = 1 tablica osim u slučaju kada se rade nekakvi reporti pa je moguće unutar jednog modela implementacija više tablica. Ili recimo čupanje posta i kategorije:
SELECT post.*, category.name AS category_name, category.slug AS category_slug
FROM post
LEFT JOIN category ON category.ID=post.ID_CATEGORY
A što se tiče settera i gettera ne čini mi se to baš kao dobra logika, ako ima 20-30 ili više polja u tablici neću valda za svako polje koristiti setter i getter. No, ako ima toliko puno polja možda onda baza i tablice nisu dobro struktuirane… Iako getter je nekad i dobro koristiti npr kod čupanja cijene iz tablice u getteru odma mogu zadati format cijene i valutu. Recimo:
public function getPrice()
{
return number_format($this->price, 2, ".", ",") . " " . $this->getCurrency();
}
Tako da je za neke stvari i dobro koristiti, ali baš za svako polje u tablici mi je malo previše. Ne znam, morat ću još malo o tom dijelu razmisliti. Pitanje isto, ako koristim gettere u modelu, kad iz controllera šaljem varijable na view onda bi zapravo i unutar viewa mogao/trebao koristiti gettere ?
<h1><?php echo $post->getTitle(); ?></h1>
<p><?php echo $post->getDescription(); ?></p>