0

私は ZF の初心者で、現在、ZF に基づいて小さなアプリを作成しようとしています。今までは多かれ少なかれうまく機能しています。私は自分のdb-データにアクセスしたい。手始めに、私は zend_db で araound をいじり始める前に、クエリ文字列を使いたいだけです。したがって、素敵な mvc 構造を維持するために、application/models/IndexMapper.php を作成しました。

class Application_Models_IndexMapper{...}

それが機能するかどうかを確認するために、今では1つの機能しか含まれていません

 public function test(){
    return ('yay');
}

動作している私のIndexControllerで、私は自分のモデルにアクセスしようとしています

$indexMapper = new Application_Models_IndexMapper();
$x = $indexMapper->test();

しかし、最初の行は

Fatal error: Class 'Application_Models_IndexMapper' not found in /path/to/application/controllers/IndexController.php on line 31

私は初心者なので、より複雑なチュートリアルを理解できず、問題を解決するのに役立ちません。私は何を間違っていますか?どういうわけかそれを含める必要がありますか?

ありがとう

編集:私のアプリケーション/bootstrap.php

<?php

defined('APPLICATION_PATH')
    or define('APPLICATION_PATH' , dirname(__FILE__));


defined('APPLICATION_ENVIRONMENT')
    or define('APPLICATION_ENVIRONMENT' , 'development');


require_once 'Zend/Loader.php';
Zend_Loader::registerAutoload();


$frontController = Zend_Controller_Front::getInstance();

$frontController->setControllerDirectory(APPLICATION_PATH . '/controllers');

$frontController->setParam('env', APPLICATION_ENVIRONMENT);

Zend_Layout::startMvc(APPLICATION_PATH . '/layouts/scripts');


//Doctype
$view = Zend_Layout::getMvcInstance()->getView();
$view->doctype('HTML5');

$view->addHelperPath('App/View/Helper', 'App_View_Helper');


unset($frontController);
4

3 に答える 3

0

クラスが間違った場所にあり、名前が間違っています。

あなたのクラスは次のようになるapplication/models/Indexmapper.phpはずです:-

class Application_Model_Indexmapper
{
    public function test(){
        return ('yay');
    }
}

次に、次のように呼び出します:-

$indexMapper = new Application_Model_Indexmapper();
$x = $indexMapper->test();

モデルの最後から「s」を削除したことに注意してください。これは必須ではなく、見つかったようにエラーが発生します。また、クラスはモジュールではなくモデルフォルダーにあります。モジュールを使用したい場合は、これこれをマニュアルから読む必要があります。

最初の基本的なプロジェクトでは、bootstrap.php は次のようになります。

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
    //Yes, it's empty!
}
于 2012-06-27T12:53:51.890 に答える
0

さて、私のチュートリアルはあまり役に立たなかったと思います。推奨どおりに行い、最初からやり直します。でもありがとう

于 2012-06-28T13:54:37.633 に答える
0

モデルの構造は の下にあり./application/models/IndexMapper.phpます。そのファイルには、名前を付けたとおりのクラスがあり、オートロードが機能します。

www.akrabat.com には、優れた初心者用チュートリアルがあります。

于 2012-06-27T12:34:55.143 に答える