gpt4 book ai didi

php - 如何避免 CodeIgniter 中的 Controller 代码臃肿?

转载 作者:行者123 更新时间:2023-12-04 06:06:44 33 4
gpt4 key购买 nike

Controller 在 MVC 模式中用于处理用户输入和输出。因此,输入验证和响应准备应该在 Controller 中完成。

例如,我有一个 Controller 方法“保存”,它:

  • 查找输入数据
  • 对数据运行验证器
  • 如果输入有效,则加载适当的模型,将其字段设置为输入值,并调用其 save()方法
  • 如果输入无效,准备数据以重新加载编辑表单,显示表单

  • 所有这些序列都会产生相当困惑的线性代码。我想以某种方式将其分开。我是否将验证部分移至模型?听起来不对?我是否创建一个特殊的“库”类来处理输入?

    在 Asp.Net MVC 中这会更好,因为他们已经实现了“对象绑定(bind)器”模式。因此,验证和模型字段绑定(bind)消失了, Controller 变得更轻了。 CodeIgniter 有类似的东西吗?

    最佳答案

    Controller 进行验证并没有被广泛接受,我在模型中按照“保持模型胖, Controller 瘦, View 哑”的方式进行验证。

    这取决于业务逻辑什么是有效的电话号码等等,所以只有将它放在模型中才有意义。

    关于php - 如何避免 CodeIgniter 中的 Controller 代码臃肿?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8261434/

    33 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com