系统library只能扩展一次吗?
想给网站增加用户注册和登录的表单验证功能,想了半天,因为需要调用系统的 Form_validation类库,写在Model、Helper,或者新建一个Library都不合适,写进去会造成代码耦合。所以我想给系统类库 Form_validation扩展功能,新建 MY_Form_validation 扩展。
但是 MY_Form_validation 中有用户注册验证和用户登录验证,想用适配器模式来写,但是 MY_Form_validation
还可以被继续继承吗?如果不能,Form_validation 被 MY_Form_validation 扩展一次后要再次扩展怎么办呢? Contrller 一般直接在控制器里做表单验证。
在模型里做验证也是不错的选择。 但是大家都不推荐在 Model 里面调用 Library 吗?看大家说Model层不要和其他类库扯上关系。
因为很多页面都学要调用这个表单验证,比如还有留言、评论等,写在 Controller 里,每个 Controller 都学要写一遍,代码重复太多了。 Hex 发表于 2012-6-7 18:58 static/image/common/back.gif
一般直接在控制器里做表单验证。
在模型里做验证也是不错的选择。
但是大家都不推荐在 Model 里面调用 Library 吗?看大家说Model层不要和其他类库扯上关系。
因为很多页面都学要调用这个表单验证,比如还有留言、评论等,写在 Controller 里,每个 Controller 都学要写一遍,代码重复太多了。 你试试可不可以啊,我还真没试过
一般也就是继承一次
把一些常用的功能封装到里面
然后继承一下,基本就可以了 zhjphp 发表于 2012-6-8 09:01 static/image/common/back.gif
但是大家都不推荐在 Model 里面调用 Library 吗?看大家说Model层不要和其他类库扯上关系。
因为很多页面 ...
谁说的不建议在模型里调用类库?不要被误导。
CI 是很灵活的,要根据你的项目来决定如何使用。
表单验证可以做成配置。不用每个页面都写。
另外,如果不是很多控制器都使用相同的规则,完全可以在每个控制器里写,不会有多少重复代码的,呵呵 非常感谢 kissgxd,Hex的帮助,应该多动手,写代码时应该充分发挥CI的自由性,现在对CI又有深一层理解了
页:
[1]