質問

私はcakephpでルーセンを実装しようとしています、そしてこのガイドに従ってくださいhttp://jamienay.com/2010/01/zend_search_lucene-datasource-for-cakephp/

このエラーが発生しています

ConnectionManager :: LoadDataSource -DataSourceクラス.ZendSearchLucenesourceをインポートできません

ベンダーファイルをアプリ/ベンダー/zend/に配置しました

これをBootstrap.phpに追加しました

ini_set('include_path', ini_get('include_path') . ':' . CAKE_CORE_INCLUDE_PATH . DS . '/vendors');

/**
 * AutoLoading Zend Vendor Files
 */
function __autoload($path) {
    if(substr($path, 0, 5) == 'Zend_') {
        include str_replace('_', '/', $path) . '.php';
    }
    return $path;
}

これをデータベース構成に追加しました

var $zendSearchLucene = array(
    'datasource' => 'ZendSearchLucene',
    'indexFile' => 'lucene', // stored in the cache dir.
    'driver' => '',
    'source' => 'search_indices'
);

search.phpというモデルを作成しました

<?php
class Search extends AppModel {
    var $useDbConfig = 'zendSearchLucene';

}
?>

今、私はこのような検索と呼ばれるコントローラーを作成しました

<?php
class SearchController extends AppController {

    var $name = 'Search';

    function index(){

    }


}
?>

私がサイトにアクセスするとき/検索はそのエラーを取得します。

役に立ちましたか?

解決

これがまだあなたに関連しているかどうかはわかりませんが、私は同じDataSourceを使用し始めたばかりで、同じ問題に遭遇しました。 Cake 1.3のDataSourceを更新しましたが、今すぐ機能するはずです。

GitHubでのプロジェクトのフォークをご覧ください。
https://github.com/deceze/zend_search_lucene_source

問題がある場合は、お願いします 開いたチケット 彼らのために。それらを修正することができるかどうかを確認します。 DataSourceは良い根拠ですが、更新と拡張機能が必要になる場合があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top