因此,在我的 python django 应用程序中,体系结构的结构使其分为不同的应用程序。一个应用程序users
,一个应用程序finance
,等等。
每个应用程序都具有以下基本结构:
app_name
models
services
tests
我正在开发一项新功能来支持促销代码。促销代码将允许用户为其即将到来的账单获得折扣。所以我创建了一个PromoCodeModel
和一个PromoCodeService
。在服务内部,我需要检查用户是否有资格兑换此代码。看起来这个逻辑可能会变得相当复杂,我希望将资格检查封装到它自己的类中——比如PromoCodeEligibility(user, promo_code)
.
我想知道——这应该属于哪里?我应该创建一个新的PromoCodeEligibilityService
吗?或者我应该创建一个名为的新文件夹domain
并将其设为域对象?我也可以将这个逻辑转移到model
它本身,但是拥有真正胖的模型对我来说似乎更像是一种反模式。想法?