2011-05-11 49 views
0

所以我坚持一个文件结构的问题,我试图找到不重复的最佳方式。我试图让功能分享每个额外的部分(音乐,电影,表演等)。特点是喜欢,建议,标签和列表。我正在寻找关于如何构建它的建议,以便最少的代码重复和轻松安全地访问每个部分的功能。细节如下。另外我正在使用燃料PHP框架:http://fuelphp.com/文件结构+控制器之间的共享功能

有各种:音乐,电影,表演。 (http://domain.com/music/view/1) 每个上市支持标签:(http://domain.com/music/tag/view/rock)

到目前为止,这很容易,但功能像'喜欢'和'推荐'让我感到困惑,因为我可以在每个列表的控制器中'喜欢'。例如(http://domain.com/music/like/1)或在其自己的控制器(http://domain.com/like/music/1)中。

此外,每个列表都有“推荐”,其中列出了每条推荐的评论和“赞”相似的列表。所以'喜欢'可以用于列表和建议。

音乐(Model_Music)一到一个Model_List]

- 喜欢

- 标记(多到多)

- 建议(由UNION交叉引用)

- 列表(在这种情况下,所有的歌曲和歌曲名称)一个一对多]

展会(Model_Shows)一到一个Model_List]

- 喜欢

- 标签(多到多)

- 建议(联合交叉引用)

- 列表(在这种情况下,所有节目的名称和数量)[一对多]

正如你可以告诉大多数它将是相同的代码只是不同的网址结构和一些使用哪个表的变化。我只是不知道如何处理最好的东西,只需要一个更有经验的观点来处理每个列表music.php,shows.php,movies.php所有这些附加功能,任何其他将被添加的功能。

回答

1

我会建议创建一个基础控制器来构建您的所有特定列表。

因此,您需要在您的控制器目录中创建一个列表文件夹,并将listings.php作为列表目录中所有控制器的基础。

您只需在所有列表控制器中扩展基本控制器,并且继承基础控制器中的任何功能。

有关how to structure base controllers in fuel的更多详细信息。

相关问题