我正在阅读关于OOP并试图将其应用于Rails(受到Bob叔叔的Ruby讨论的启发),我想知道,以下我的方式从“逻辑”模型访问存储库是否正确:
class Product
...
def pick_a_random_product
repository.pick_a_random_product
end
...
end
这是否符合“逻辑与持久性分离”的条件?在“域”/“逻辑”模型中,是否可以根据需要广泛使用repository
?
repository
是一个真正能从数据库中获取内容的类。
答案 0 :(得分:0)
它有效,但如果pick_a_random_product用于不同的类意味着
假设您有类xyz
Class Xyz
...
def pick_a_random_product
Product.pick_a_random_product
# Xyz.pick_a_random_product you can't use this.
end
...
end
你有类产品
class Product
...
def pick_a_random_product
Xyz.pick_a_random_product
end
...
end