用户
 找回密码
 入住 CI 中国社区
搜索
查看: 3302|回复: 7
收起左侧

[已解决] 如果m和c我都需要定义几个基础方法, 该放哪里合适

[复制链接]
发表于 2011-1-30 22:20:12 | 显示全部楼层 |阅读模式
除了内置的很多方法外, 我还需要自定义很多方法, 有的是间接调用系统内置的, 有的是加以修饰的, 这些方法放什么地方合适, 总不能直接修改core里的controller和model吧
发表于 2011-1-30 22:25:57 | 显示全部楼层
扩展controller和model,然后你继承自己扩展的controller和model
 楼主| 发表于 2011-2-1 21:47:34 | 显示全部楼层
回复 2# jeongee


    那还是等于修改原有的了, 这样如果ci升级的话是个问题吧, 每次都要改, 记得zencart有中模式就是原系统怎样升级都可以不影响改动, 因为是附加的
发表于 2011-2-1 22:01:18 | 显示全部楼层
回复 3# lyf362345


   怎么会影响升级呢?你看不到application文件夹里也有core文件夹吗?
你的程序是写在application里面的,以后省级只需升级system文件夹就可以了,application基本不要动(除非CI结构发生变化,比如1.7.3到2.0的升级),而扩展的controller和model都是放在application里面的怎么会出现你说的问题呢???
 楼主| 发表于 2011-2-1 22:14:16 | 显示全部楼层
回复 4# jeongee


   嗯 知道了, 我对ci不是很了解, 这样说我就知道了, 谢谢啊因为我使用框架和做二次开发的一贯原则是尽量不懂原有的, 实在不行就覆盖, 这样能省很多麻烦
 楼主| 发表于 2011-2-1 22:27:42 | 显示全部楼层
回复 2# jeongee


   扩展的是负载app的core里吗, 我直接继承是不行的, 要怎么才能继承到呢, 貌似ci不会读里面的文件
发表于 2011-2-2 09:12:43 | 显示全部楼层
本帖最后由 jeongee 于 2011-2-2 09:16 编辑

回复 6# lyf362345

在system的core文件夹的CodeIgniter.php的文件里有下面这段代码
    QQ截图未命名.jpg 这只是一个加载基础controller的代码例子,其他的加载是有Loader.php来完成的,具体你可以看看里面的代码。

你可以看看手册的这节,相信你能明白如何实现你要的功能。http://codeigniter.org.cn/user_guide/general/core_classes.html
 楼主| 发表于 2011-2-3 19:07:53 | 显示全部楼层
回复 7# jeongee


   谢谢, 看错了, 之前不知道怎么看的, 现在明白了

本版积分规则