在存储库类中实现查找(或搜索)方法时,最好是接受域模型还是更好地实现特定的查找方法?查找方法中的域模型或基类型?
例如,我们有一个Person
类,其属性为name
,id
。
在存储库中,我们可以有一个接受一个人作为参数的find
方法。该方法将使用给定的模型来搜索现有人员。
另一种方法是对每个属性实施查找方法(find_by_name
,find_by_id
)。
由于我将在Python中实现这个功能,我还可以实现一个接受关键字的方法。这将类似于接受-A模型方法:find(name='harry')
作为一个方面的问题,当find方法涉及的索引值(id
),是它更好地使用get_by_id()
(这意味着索引)或find_by_id()
(这是更抽象)。
为什么如果你已经拥有'Person'并且可以将它作为参数传递给存储库查询函数,你需要查询'Person'? –
@AlexanderLanger给定的'Person'实例是部分的。例如,只有'id'属性可以在部分实例中设置,结果将是一个单独的'Person'实例,同时设置'name'和'id'。 – siebz0r