| 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: 12 let
|
|||
0