首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何避免CodeIgniter中的控制器代码膨胀?

如何避免CodeIgniter中的控制器代码膨胀?
EN

Stack Overflow用户
提问于 2011-11-24 18:50:42
回答 2查看 303关注 0票数 2

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

例如,我有一个控制器方法“保存”,它:

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

f 210

所有这些序列都会产生大量的线性码。我想以某种方式把它分开。我是否将验证部分移到模型中?听起来不对?我是否创建一个特殊的“库”类来处理输入?

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

EN

回答 2

Stack Overflow用户

发布于 2011-11-24 18:57:17

控制器进行验证并不被广泛接受,我在模型中按照“保持模型的脂肪、控制器的瘦和视图的愚蠢”来进行验证。

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

票数 2
EN

Stack Overflow用户

发布于 2011-11-24 18:59:11

我会完全按照你所回避的那样做,并尽可能地在你的模型中加入更多的逻辑。国际海事组织( imo )确实应该利用管制员来启动服务,并准备数据以征求意见。

你应该尽可能多地重复使用代码(验证器、过滤器等)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8261434

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档