0

次の状況があります。

class User extends MY_Controller {
   (...)
}


class Game extends User {
   (...)
}

クラスGameはユーザーインタラクション/ ajaxリクエストなどを処理し、クラスUserはセッション、dbインタラクションなどのためのものです(クラスGame内で、親コントローラーのいくつかのメソッドを参照しています)。私がローカルで作業している場合、すべてが正常に機能します。しかし、サーバー環境で同じコンスタレーションを使用すると、クラス Game から応答がありません。(設定でクラスを自動ロードしています-クラス自体が見つかったようです)。しかし、応答は常に空です。一方、エラーもまったく発生しません...そのため、何が問題なのか自問しています。

忘れた設定はありますか?または、私は完全に間違った方向に進んでいて、コントローラーを単純に拡張することはできませんか?

(申し訳ありませんが、私はCIにまったく慣れていません)

前もって感謝します。

4

1 に答える 1

0

通常、CodeIgniter では、それぞれに個別のコントローラーがあります。したがって、UsersコントローラーとコントローラーがありGameます。

ユーザーと何かをする必要がある場合は、次のように URL を呼び出します。http://example.com/index.php/users/some_user_actionこれは、ゲーム ( http://example.com/index.php/game/some_game_action) にも当てはまります。

コントローラーは次のようになります

// codeigniter/application/controllers/users.php
class Users extends CI_Controller{

    function index(){
        echo "I'm the index page and can be reached at http://example.com/index.php/users";
    }

    function some_user_action(){
        echo "I'm some user action; see me at http://example.com/index.php/users/some_user_action";
    }
}


// codeigniter/application/controllers/game.php
class Game extends CI_Controller{

    function index(){
        echo "I'm the Game controller index page and can be reached at http://example.com/index.php/game";
    }

    function some_game_action(){
        echo "I'm some game action; see me at http://example.com/index.php/game/some_user_action";
    }
}

CodeIgniter には優れたドキュメントがあります。一見の価値があります。導入チュートリアルは、開始するのに適した場所です: http://ellislab.com/codeigniter/user-guide/tutorial/index.htmlコントローラーのページも参照してください: http://ellislab.com/codeigniter/user-guide/general /controllers.html

于 2013-05-01T18:10:56.607 に答える