我有一个小的Laravel项目。在这个项目中,我有一些模型,但我的问题所需的模型是User
,Course
和Payment
模型。
User
可以订阅到Course
(仅一个),并且需要每月支付订阅费用。
我正在创建一个新页面,该页面将根据User
的当前状态显示不同的内容。如果他们付款失败,则将显示ContentA
,如果所有付款都是最新的ContentB
,则会显示。
从MVC架构的角度来看,在User
模型hasFailedPayments()
中创建一个函数将执行所有必需的操作并检查以确定User
是否具有功能是否正确?付款失败?这应该由其他层之一(控制器/视图)负责吗?
目前,我正在Controller中进行检查,但是如果需要执行完全相同的检查,则需要重复此代码。
谢谢!
答案 0 :(得分:4)
您是正确的,此逻辑将存在于模型中。在大多数情况下,您的大多数或所有业务逻辑都应该存在于模型中。视图在那里查看逻辑生成的数据。控制器在那里可以为模型提供视图,并控制项目的总体流程。