首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Codeigniter:我应该如何组织我的聊天插件,以便它可以加载到其他页面?

Codeigniter:我应该如何组织我的聊天插件,以便它可以加载到其他页面?
EN

Stack Overflow用户
提问于 2012-05-25 02:55:21
回答 1查看 794关注 0票数 0

我已经构建了一个由chat.php控制器、chat_model.php、chat_view.php和chat.js组成的聊天插件。我还使用jQuery来执行对控制器的AJAX请求。

聊天就像它自己的网页一样工作得很好(有一个专用的控制器+视图),但最终我希望聊天功能可以在其他控制器中访问,并能够以更独立/模块化的方式在其他网页中查看。我只是不确定MVC构建它的方式会是什么样子。

我是否应该将聊天控制器转换为库,以便其他控制器可以访问它?如果是这样,这对我的AJAX请求意味着什么?我是否能够向库文件发出AJAX请求,或者我是否仍然需要保留一个(较小的)聊天控制器来充当这些AJAX请求和库之间的中间人?

如果不是一个库,有没有一种方法可以更模块化地使用控制器,以便它们可以协作并被其他控制器调用?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-25 15:10:12

您需要将聊天控制器更改为一个库类构造函数,并将模型更改为该聊天库的类体,并在应用程序中自动加载该库,然后在要显示聊天的控制器中获取聊天视图,并将其赋给一个变量以在当前控制器的视图中使用。像这样:

代码语言:javascript
复制
class myChat {

    public __construct(){
        // controller codes here
    }

    public saveChatMessage($message){
        // model codes here
    }

}

然后对于视图,

代码语言:javascript
复制
//in any controller you want to display the chat
$this->load->view("controller.php");
$this->load->view("chat.php");

代码语言:javascript
复制
$data["chatview"] = $this->load->view("chat.php","",true);
$this->load->view("controller.php",$data);

对于后端AJAX响应器,您需要一个控制器来以基于URL的格式访问它们。

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

https://stackoverflow.com/questions/10743633

复制
相关文章

相似问题

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