2013-02-16 111 views
0

谁能帮我创建一个具有以下....使用Django的自定义管理

这仅仅是一个学习锻炼我的自定义管理器,它不是一个真正的应用程序,以便尽可能多的解释后,我尽可能。

1)需要2个目的,其自(人)和资料

2)除以用person.age profile.dog_years

3)将这个模型

我的猜测是,首先我在我的models.py中创建一个自定义管理器。

class PersonManager(models.Manager): 
    def make_score(self,profile): 

在自定义管理器中,然后执行数学self.age/profile.dog_years。

那么一些如何回报呢?

它添加到模型,即dogAge =的PersonManager()

结果:

那是什么,我希望发生的是,当我在我看来 回报状况的所有人员。 objects.filter()(以某种方式在这里传递配置文件?)它有一个名为dogAge的新字段,其中列出了所有人的狗年龄。

+0

是否要修改人员列表或只有一个? – Zulu 2013-02-16 17:39:17

回答

1

这不是你在管理器中做的事情。这是一个普通模型方法的工作。

管理器方法用于以某种方式修改查询的内容。这不是你想要做的事情:你想为属性注释到查询集中的每个对象。由于这不需要进一步的数据库计算,所以模型方法是合适的地方。