0

chat.phpコントローラー、chat_model.php、chat_view.php、chat.jsで構成されるチャットプラグインを作成しました。また、jQueryを使用してコントローラーへのAJAXリクエストを実行しています。

チャットは(専用のコントローラーとビューを備えた)独自のWebページとして正常に機能しますが、最終的には、チャットが機能し、他のコントローラーでアクセスでき、他のWebページでより独立した/モジュール式の方法で表示できるようにする必要があります。これを構造化するMVCの方法がどのようになるかはわかりません。

他のコントローラーからアクセスできるように、チャットコントローラーをライブラリに変換する必要がありますか?もしそうなら、それは私のAJAXリクエストにとって何を意味しますか?ライブラリファイルに対してAJAXリクエストを行うことはできますか、それとも、それらのAJAXリクエストとライブラリの仲介役となる(より小さな)チャットコントローラーを保持する必要がありますか?

ライブラリでない場合、コントローラーをよりモジュール化して使用する方法はありますか?他のコン​​トローラーが連携して呼び出すことができますか?

4

1 に答える 1

0

チャット コントローラーをライブラリ クラス コンストラクターに変更し、モデルをそのチャット ライブラリのクラス本体に変更し、そのライブラリをアプリケーションに自動ロードしてから、チャットを表示するコントローラーでチャット ビューをフェッチし、それを割り当てる必要があります。現在のコントローラーのビューで使用する変数。お気に入り:

class myChat {

    public __construct(){
        // controller codes here
    }

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

}

ビューについては、

//in any controller you want to display the chat
$this->load->view("controller.php");
$this->load->view("chat.php");

また

$data["chatview"] = $this->load->view("chat.php","",true);
$this->load->view("controller.php",$data);

バックエンドの AJAX レスポンダーの場合は、URL ベースの形式でアクセスするためのコントローラーが必要です。

于 2012-05-25T07:10:11.540 に答える