Autor | Zpráva | ||
---|---|---|---|
candiess Profil |
Zdravím na večer,
chci se vás zeptat, jak je na tom filosofie MVC v MODEL vrstvě, když mam metodu getStory a getStoryWithText, uvedu SQLka: <?php public function getStory($storyID) { return $this->db->query("SELECT * FROM #__stories WHERE storyID = '$storyID'"); } //varianta A public function getStoryWithText($storyID) { return $this->db->query("SELECT * FROM #__stories s, #__stories_text st WHERE s.storyID = '$storyID' AND s.storyID = st.storyID"); } //varianta B public function getStoryWithText($storyID) { $data["info"] = $this->getStory($storyID); $data["text"] = $this->db->query("SELECT * FROM #__stories_text st WHERE st.storyID = '$storyID'"); return $data; } ?> |
||
Joker Profil |
#2 · Zasláno: 17. 4. 2014, 09:58:30
candiess:
Na to není nějaké závazné pravidlo. Ale v SQL dotazu bych použil JOIN ON podmínka místo kartézského součinu tabulek.
A s dobře organizovanou databází a dobře napsaným dotazem bude podle mě rozdíl v rychlosti tak malý, že ani nemá smysl to mít jako dvě oddělené varianty. Kdyby to i přesto bylo nutné, ještě by šlo zvážit variantu getStory($storyId) + getStoryText($storyId) |
||
Časová prodleva: 10 let
|
0