构造模型以返回对象列表

时间:2013-05-24 21:12:27

标签: python model-view-controller

我有一个代表朋友(模特)的班级。这个朋友有任何其他模型的属性和方法。

为了显示包含我所有朋友列表的网页,我需要创建一个函数来返回该数据。

我的问题:我应该把这个功能放在哪里?在Friend模型中(即使它会返回一个对象列表)?或者我应该创建一些其他模型,如使用Friend模型的FriendList?

谢谢

2 个答案:

答案 0 :(得分:0)

这取决于很多东西。

关于项目的大小,数据的结构,您希望使用的模式等等。

也许你应该首先看看这些事情:

根据您软件的标准,您可以确定您需要的内容。

但是,您可以创建一个名为Friends的类,它会扩展您的类Friend。在这个类中,你可以有一些加载功能。

我不会将Retrieving函数放在Friend Class本身,主要是因为它不符合逻辑。

示例代码

class Friends : List<Friend>
{
public function bool RetrieveAll()
{
//load them here
}
}

编辑:如果你想使用MVC,你应该去找Gab的答案。

答案 1 :(得分:0)

理论上,您的数据将存储在应用程序外部的资源中。负责检索这些数据的对象通常命名为DataAccessObject(DAO)。

在你的情况下,你可以有一个FriendDAO暴露像

这样的方法
 List<Friend> retrieveAll();

 Friend retrieveByName(String name);

 persist(Friend friend);

等...

MVC的要点是在不同的层中清楚地分离数据持久性,操作和显示。

您可以拥有许多变体,业务逻辑可能位于模型层或控制器中,您可以拥有一个专用于查看事件处理(前端控制器)委托给其他控制器或模型的控制器。

您为课程命名的方式并不那么重要。