PHP的codeIgniter框架和python的Django框架之几点对比

1、codeigniter的业务逻辑在controller中,django的业务逻辑在views中。按照django文档

的说法,它的设计理念基于视图用来决定展现哪些数据和如何展现数据,而与之相对的,CI

的视图则只用来决定如何展现数据,选择哪些数据的部分则被装入了控制层。


2、Django的控制层主要在于URL配置文件,通过它来控制什么样的URL使用什么方法。CI的控

制层有专门的controllers类,通过URL路由来指定使用哪一个类的哪一个方法。


3、codeigniter的url路由只需要在controller中定义方法,然后框架会自动分析url找到对

应的类和方法。采用类、方法、参数的逐级路由形式。而django的url路由采用映射的方式,

手工在url配置文件里添加映射方法。这样貌似灵活度更高,但同时也增加了工作量。


4、CodeIgniter没有强调内置模板,视图文件即是网页文件,直接用php输出controller传来

的数据。controller的方法通过一个变量“data”传递所有数据到view文件。

  而Django强调模板概念,类似于格式信函的方式,把数据保存在context变量中,然后来渲

染模板文件。本质上“逻辑/页面”分离方式跟CodeIgniter差不多,但是页面文件要使用专

门的模板语言来写。

   在逻辑和页面的分离上,CodeIgniter更加轻量级,对于前后端都要程序员来写的人来说

更方便。而Django页面模板和后端用不同语言也许更适合团队分工明确的项目,对程序员来

说增加了学习成本。



另外,模板标签非常有用,可以让页面进一步分离而重用。

Django模板的本质就是载入html文件,对该文件进行分析并且进行各种操作(比如替换,增加标签等),

然后再发送给浏览器。

模板继承方便了复用代码。这一点比codeigniter好。



5、CI强制程序使用单入口,Django没有这个限制。而另一方面,CodeIgniter非常轻量级,可以自己随心所欲的添加和写代码,不需要拘束于框架本身,但Django就告诉你了一套规则,你必须按照它的这一套规则去做。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值