Скачал модуль 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 написал(а):
Семён - я знаю что ты знаешь
Рассказывай


Спустя 2 минуты, 58 секунд (13.12.2011 - 10:50) Семён написал(а):
Этим классом не пользуюсь могу лишь посоветовать
1) Проверить нет ли кэша.
2) Присутствует ли у тебя pagination.php по адресу:
modules/pagination/classes/pagination.php ?
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?
Можешь кинуть исходный код файла 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
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
Например подобные конструкции 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
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) Семён написал(а):
Всё нормально он работает, ошибок нет
Проверяй, как ты его поместил в папку + как внёс изменения по всем файлам.

Проверяй, как ты его поместил в папку + как внёс изменения по всем файлам.
Спустя 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 стоит? |


ппц я тормоз..... короче надо спать почаще )))))
права 700 стояли. Все заработало, Сема большое спасибо )))) Пошел я спать...
Спустя 56 секунд (13.12.2011 - 11:28) Семён написал(а):

Спустя 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')
И у вас работает? Как заставили работать?
Проблема здесь как я понял:
для якобы 3.2 нашел, но там тоже саме почти и вообще на главную страницу ссылается
т.е. выходит тот же Request::current()->route()->uri()
<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'])Но в ядре 3.2 в классе request уже нет параметров для uri - он просто возвращает текущий uri - номер страницы $page уже туда так не загонишь
{
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();
}
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 | второй профиль