CodeIgniter -购物车在所有页面


CodeIgniter - Shopping Cart on all pages

我必须在我的电子商务网站(CodeIgniter, MVC Paradigm)的几个页面上放置购物车。

我不想在所有的控制器中调用这个小部件后面的模型。

我知道一个解决方案可能是调用自动加载器中的模型,但是,有时,我不想显示购物车。

因此,解决方案可能调用相关视图中的模型。但是,由于它尊重(我认为)MVC范式,我担心CodeIgniter并不是真正设计成那样的。

保持清晰、简单和可维护的体系结构的最佳解决方案是什么?

谢谢!

钩子:您可以尝试创建一个读取/计算购物卡信息的Hook,并将其设置为运行'post_controller'。这样,你的钩子将在每个控制器之后运行,在session或flash变量上设置购物车信息,以便从你的视图中访问。

更多信息在这里:http://ellislab.com/codeigniter/user-guide/general/hooks.html

或者你可以从视图中调用helper,这是不推荐的,但它可以工作。

将购物车数据的查询代码放在cart_helper.php中,并从视图中调用它,就像调用任何其他函数一样。

请记住,您的helper必须在当时加载,因此要么自动加载它,要么在控制器上设置一个加载__construct()

您可以创建自己的控制器并扩展CI控制器,然后根据条件加载模型。

这里是参考:http://ellislab.com/codeigniter/user-guide/general/core_classes.html

如何通过ajax请求调用cartData ?