【问题标题】:Data passing between Controller and DAO within PHP MVC projectPHP MVC项目中Controller和DAO之间的数据传递
【发布时间】:2013-06-06 12:58:49
【问题描述】:

我正在做一个 PHP MVC 项目,与数据库的数据交互类型足以促进包含数据访问层。视图将使用 Ajax 将 JSON 对象传递给控制器​​进行处理。

对于需要执行DAO功能的控制器动作,最好:

  • 将传入的 JSON 打包到模型对象中并传递给 DAO 函数
  • 将传入的 JSON 数据直接传递给 DAO

现在,我正在使用选项 1,因为视图是与控制器/DAO 层并行开发的,并且将数据打包到对象中更容易编写测试。但是,在生产方面,我不确定这是否是个好主意。

【问题讨论】:

    标签: php model-view-controller


    【解决方案1】:

    使用模型对象将数据传输到 DAO。我看到的原因是:

    1. 更好的可维护性
    2. 在其他地方和许多情况下重复使用模型
    3. 在模型类中有特定于模型的方法,在数据访问层中有特定于数据的方法。
    4. 始终将 JSON 格式的模型对象发送回视图。

    【讨论】:

      【解决方案2】:

      我认为第 1 个选项是最好的。特别是如果您要在服务器端验证数据。您可以有一个控制器操作,用于验证数据并将其封装到 DAO 函数将使用的模型中。此解决方案还将使您的 DAO 方法在应用程序的其他部分中更具可重用性(例如:每个 DAO 方法都将操纵数据模型......就像标准行为一样)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-01-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-07-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多