【问题标题】:MVC and Model responsibilitiesMVC 和模型职责
【发布时间】:2019-04-09 23:44:41
【问题描述】:

我有一个小型 Laravel 项目。在这个项目中,我有几个模型,但我的问题需要的是 UserCoursePayment 模型。

User 可以订阅Course(只有一个),并且需要按月支付订阅费用。

我正在创建一个新页面,该页面将根据User 的当前状态显示不同的内容。如果他们付款失败,我会显示ContentA,如果所有付款都是最新的,则会显示ContentB

从 MVC 架构的角度来看,在 User 模型 hasFailedPayments() 中创建一个函数是否正确,该函数将执行所有必需的操作并检查以确定 User 是否付款失败?这应该是其他层之一(控制器/视图)的责任吗?

目前我正在控制器中进行检查,但如果我需要进行完全相同的检查,我将需要复制此代码。

提前致谢!

【问题讨论】:

    标签: laravel model-view-controller eloquent


    【解决方案1】:

    你是对的,这个逻辑会存在于模型中。在大多数情况下,您的大部分或全部业务逻辑都应该存在于您的模型中。视图用于查看逻辑产生的数据。控制器用于为模型提供视图并控制项目的整体流程。

    【讨论】:

    • 另外,如果您的模型开始变得非常大,我建议将它们放在服务提供商处,但除此之外,E McG 是正确的。
    猜你喜欢
    • 2013-11-29
    • 2011-07-18
    • 2021-12-31
    • 2013-12-09
    • 2013-01-19
    • 2013-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多