CakePHP с Lucene
Я пытаюсь реализовать Lucene с помощью cakephp и следую этому руководству http://jamienay.com/2010/01/zend_search_lucene-datasource-for-cakephp/
Получаю эту ошибку
ConnectionManager::loadDataSource - Невозможно импортировать класс DataSource.ZendSearchLuceneSource
я поместил файлы продавца в app / vendors/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(){
}
}
?>
когда я захожу на сайт / поиск получаю эту ошибку.
1 ответ
Не уверен, что это все еще относится к вам, но я только начал использовать тот же источник данных и столкнулся с теми же проблемами. Я обновил источник данных для Cake 1.3, и теперь он должен работать.
Взгляните на мой форк проекта на Github:
https://github.com/deceze/zend_search_lucene_source
Если у вас возникнут какие-либо проблемы, пожалуйста, откройте для них билеты. Я посмотрю, смогу ли я их починить. Источник данных является хорошей основой, но может потребоваться некоторое обновление и расширение.