[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Kohana 3.2 не видит класс
Invis1ble
Всем привет.
Скачал модуль Pagination с гитхаба (https://raw.github.com/kohana/pagination/3.2/develop)
В bootstrap.php подключил его
Kohana::modules(array(
'auth' => MODPATH.'auth', // Basic authentication
// 'cache' => MODPATH.'cache', // Caching with multiple backends
// 'codebench' => MODPATH.'codebench', // Benchmarking tool

'database' => MODPATH.'database', // Database access
// 'image' => MODPATH.'image', // Image manipulation

'orm' => MODPATH.'orm', // Object Relationship Mapping
// 'unittest' => MODPATH.'unittest', // Unit testing

'pagination' => MODPATH.'pagination', // Pagination
'userguide' => MODPATH.'userguide', // User guide and API documentation
));

При попытке создать объект:
$pagination = Pagination::factory();

вылетает fatall error:
ErrorException [ Fatal Error ]: Class 'Pagination' not found

Кто знает - подскажите плиз, как это побороть. Не охота дебажить дебри ядра... :(



Спустя 2 минуты, 5 секунд (13.12.2011 - 10:47) Invis1ble написал(а):
Семён - я знаю что ты знаешь smile.gif Рассказывай smile.gif

Спустя 2 минуты, 58 секунд (13.12.2011 - 10:50) Семён написал(а):
Этим классом не пользуюсь могу лишь посоветовать
1) Проверить нет ли кэша.
2) Присутствует ли у тебя pagination.php по адресу:
modules/pagination/classes/pagination.php ?

Спустя 2 минуты, 11 секунд (13.12.2011 - 10:52) Invis1ble написал(а):
Цитата
Проверить нет ли кэша.

проверил уже - кеш отключен:
var_dump(Kohana::$caching); // false

Цитата
Присутствует ли у тебя pagination.php по адресу:
modules/pagination/classes/pagination.php ?

присутствует конечно, в том то и дело...

ПС.
Цитата
Этим классом не пользуюсь могу лишь посоветовать

а каким пользуешься? самописным?

Спустя 3 минуты, 42 секунды (13.12.2011 - 10:56) Семён написал(а):
Invis1ble да в проекте самописный используется.
Можешь кинуть исходный код файла pagination.php?

Спустя 4 минуты, 38 секунд (13.12.2011 - 11:00) Invis1ble написал(а):
Семён
Цитата
Можешь кинуть исходный код файла pagination.php?

легко -
modules/pagination/classes/pagination.php
<?php defined('SYSPATH') or die('No direct script access.');

class Pagination extends Kohana_Pagination {}

Спустя 1 минута, 11 секунд (13.12.2011 - 11:01) Семён написал(а):
Попробуй вызови сразу Kohana_Pagination

Спустя 1 минута, 49 секунд (13.12.2011 - 11:03) Invis1ble написал(а):
Цитата
Попробуй вызови сразу Kohana_Pagination

пробовал - тот же fatal error
$pagination = Kohana_Pagination::factory();

ErrorException [ Fatal Error ]: Class 'Kohana_Pagination' not found

Спустя 38 секунд (13.12.2011 - 11:04) Семён написал(а):
Ща попробую поставить сам.

Спустя 3 минуты, 48 секунд (13.12.2011 - 11:08) Invis1ble написал(а):
немножко линку неправильную дал в первом посте
https://github.com/kohana/pagination/tree/3.2/develop

Спустя 2 минуты, 32 секунды (13.12.2011 - 11:10) Семён написал(а):
Это ущербный класс и он несовместим с 3.2 Kohana.

Спустя 1 минута, 46 секунд (13.12.2011 - 11:12) Invis1ble написал(а):
да, я в курсе что он несовместим. Думал, что получится прикрутить. Тем более, там ведется ветка 3.2.
Просто непонятно, почему автолоадер не видит класс. Ладно, прийдется дебажить.

Спустя 34 секунды (13.12.2011 - 11:12) Семён написал(а):
Теоретически его легко переписать,
Например подобные конструкции Kohana::config придётся заменить на Kohana::$config->load
Автолоадер нормально его нашёл, но заругался на default конфиг. +
Проверь ещё раз
У тебя он должен быть в папке
modules\pagination
в которой должны лежать соответственно папки:
classes
config
views
+ попробуй его инициализировать самым первым в bootstrap

Спустя 1 минута, 12 секунд (13.12.2011 - 11:14) Invis1ble написал(а):
А, так ты об этом. Ну там все это уже пофикшено в ветке 3.2 development
https://github.com/kohana/pagination/tree/3.2/develop

Спустя 1 минута, 31 секунда (13.12.2011 - 11:15) Семён написал(а):
Упс. я старый похоже скачал, ща перекачаю под 3.2

Спустя 3 минуты, 7 секунд (13.12.2011 - 11:18) Семён написал(а):
Всё нормально он работает, ошибок нет smile.gif
Проверяй, как ты его поместил в папку + как внёс изменения по всем файлам.

Спустя 3 минуты, 25 секунд (13.12.2011 - 11:22) Invis1ble написал(а):
инициализировать первым пробовал - тоже самое все.
Цитата
Проверяй, как ты его поместил в папку + как внёс изменения по всем файлам.

странно, но у меня в упор не видит. Залил в modules и дописал в bootstrap.php подключение, в первом посте привел участок кода.
Структуру я не менял:

Спустя 41 секунда (13.12.2011 - 11:22) Семён написал(а):
http://dl.dropbox.com/u/53180939/pagination.zip
Kohana::modules(array(
'pagination' => MODPATH.'pagination', // Basic authentication
// 'cache' => MODPATH.'cache', // Caching with multiple backends
// 'codebench' => MODPATH.'codebench', // Benchmarking tool
// 'database' => MODPATH.'database', // Database access
// 'image' => MODPATH.'image', // Image manipulation
// 'orm' => MODPATH.'orm', // Object Relationship Mapping
// 'unittest' => MODPATH.'unittest', // Unit testing
// 'userguide' => MODPATH.'userguide', // User guide and API documentation

));


	public function action_index()
{
$pagination = Pagination::factory();
$this->response->body('hello, world!');
}

Спустя 2 минуты, 16 секунд (13.12.2011 - 11:25) Семён написал(а):
БУБУНТА? chmod стоит?

Спустя 1 минута, 58 секунд (13.12.2011 - 11:27) Invis1ble написал(а):
Цитата
БУБУНТА? chmod стоит?

laugh.gif biggrin.gif
ппц я тормоз..... короче надо спать почаще )))))
права 700 стояли. Все заработало, Сема большое спасибо )))) Пошел я спать...

Спустя 56 секунд (13.12.2011 - 11:28) Семён написал(а):
user posted image

Спустя 23 дня, 5 часов, 39 минут, 52 секунды (6.01.2012 - 17:07) AmberLEX написал(а):
А че заработало-то?
<a href='https://github.com/kohana/pagination/tree/3.2/develop'>https://github.com/kohana/pag ination/tree/3.2/develop</a>
У меня он ссылки на страницы не выводит правильно (на корень сайта ссылаются все).
'current_page' => array('source' => 'route', 'key' => 'page')
И у вас работает? Как заставили работать?
Проблема здесь как я понял:
switch ($this->config['current_page']['source'])
{
case 'query_string':
return URL::site(Request::current()->uri()).URL::query(array($this->config['current_page']['key'] => $page));

case 'route':
return URL::site(Request::current()->uri(array($this->config['current_page']['key'] => $page))).URL::query();
}
Но в ядре 3.2 в классе request уже нет параметров для uri - он просто возвращает текущий uri - номер страницы $page уже туда так не загонишь

public function uri()
{
return empty($this->_uri) ? '/' : $this->_uri;
}

для якобы 3.2 нашел, но там тоже саме почти и вообще на главную страницу ссылается
return URL::site($this->_route->uri(array_merge($this->_route_params,  array($this->config['current_page']['key'] => $page))).$this->query());
где $this->_route получается в конструкторе $this->_route = $request->route(); где $request = Request::current();
т.е. выходит тот же Request::current()->route()->uri()

Спустя 3 часа, 50 минут, 3 секунды (6.01.2012 - 20:58) Invis1ble написал(а):
AmberLEX
	/**
* Generates the full URL for a certain page.
*
*
@param integer page number
*
@return string page URL
*/

public function url($page = 1)
{
// Clean the page number
$page = max(1, (int) $page);

// No page number in URLs to first page
if ($page === 1 AND ! $this->config['first_page_in_url'])
{
$page = NULL;
}

switch ($this->config['current_page']['source'])
{
case 'query_string':
return URL::site(Request::current()->uri()).URL::query(array($this->config['current_page']['key'] => $page));

case 'route':
// Invis1ble: Kohana 3.2 fix
$request = Request::current();
return URL::site($request->route()->uri(array_merge($request->param(), array(
'controller' => $request->controller(),
'action' => $request->action(),
$this->config['current_page']['key'] => $page
))), $request).URL::query();
}

return '#';
}


Возможно немного корявенько, сам недавно только начал изучать кохану (в перерывах между работой)

Спустя 23 часа, 23 минуты, 27 секунд (7.01.2012 - 20:21) AmberLEX написал(а):
Да, спасибо, я уже нашел.
С гитхаба просто архив не тот скачивал, хотя смотрел в файлах - то там верно все. С экрана пришлось скопировть

Спустя 6 часов, 40 минут, 12 секунд (8.01.2012 - 03:01) Invis1ble написал(а):
AmberLEX
Цитата
Да, спасибо, я уже нашел.
С гитхаба просто архив не тот скачивал, хотя смотрел в файлах - то там верно все. С экрана пришлось скопировть

где нашел? я вижу до сих пор на гитхабе нерабочий участок кода лежит...

Спустя 3 месяца, 15 дней, 19 часов, 45 минут, 19 секунд (23.04.2012 - 22:46) Гость_root написал(а):
Была такая же фигня когда перешел на ветку 3.2, вот тут нормальный модуль пагинатора


_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.