Codeigniter, перенаправляющий в другую папку с тем же именем - PullRequest
0 голосов
/ 15 января 2019

Я пытаюсь реализовать библиотеку ajax-live-search в моем проекте Codeigniter. Библиотека находится в application / third_party / jQueryLiveSearch / core .

Эта библиотека имеет собственную папку core .

Проблема возникает, когда я загружаю страницу. Похоже, Codeigniter берет основную папку по умолчанию из фреймворка, поэтому вместо использования application/third_party/jQueryLiveSearch/core/jQueryLiveSearch.php Codeigniter пытается найти ее в /core/jQueryLiveSearch.php. Это дает 404, потому что это не правильный путь.

Похоже, что папки Codeigniter имеют приоритет.

Что я могу сделать? Я не могу переместить библиотеку в папку Codeigniter core . Я также пытался составить маршрут в routes.php. Есть ли способ сказать Codeigniter использовать абсолютный путь? Спасибо.

Error

1 Ответ

0 голосов
/ 16 января 2019

Поскольку ваши библиотеки находятся вне папки application, вы можете получить к ней доступ с помощью baseurl.

То есть absolute path для вашего library:

echo site_url("/lib/jQueryLiveSearch/core/jQueryLiveSearch.php");

В AJAX Live Search плагине нужно указать url в jQuery Options

jQuery(".mySearch").ajaxlivesearch({
loaded_at: <?php echo time(); ?>,
token: <?php echo "'" . $handler->getToken() . "'"; ?>,
max_input: <?php echo Config::getConfig('maxInputLength'); ?>,
url: <?php echo (APPPATH."/third_party/jQueryLiveSearch/core/AjaxProcessor.php"); ?>
onResultClick: function(e, data) {
    // get the index 1 (second column) value
    var selectedOne = jQuery(data.selected).find('td').eq('1').text();

    // set the input value
    jQuery('#ls_query').val(selectedOne);

    // hide the result
    jQuery("#ls_query").trigger('ajaxlivesearch:hide_result');
},
onResultEnter: function(e, data) {
    // do whatever you want
    // jQuery("#ls_query").trigger('ajaxlivesearch:search', {query: 'test'});
},
onAjaxComplete: function(e, data) {

}
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...