Список форумов Cake-PHP.ru Cake-PHP.ru
Форум программистов CakePHP
(на сайт)
 
 Watched TopicsWatched Topics   FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Paginator->sort() with related tables

 
Начать новую тему   Ответить на тему    Список форумов Cake-PHP.ru -> Общий
Предыдущая тема :: Следующая тема  
Автор Сообщение
Serginho

цитировать



Зарегистрирован: 27 Ноя 2009 17:19:14
Сообщения: 26

СообщениеДобавлено: 08 Янв 2010 15:08:16    Заголовок сообщения: Paginator->sort() with related tables Ответить с цитатой

Доброго времени суток.

У меня в базе есть 3 таблицы (users, cities, countries).
В соответствующих им моделях:
Код:

users BelongsTo cities
cities BelongsTo countries

В контроллере (UserController):
Код:

recursive => 2

В отображении:
Код:

 <th>
       <?php echo $paginator->sort('Name', 'first_name');?>
   </th>
    <th>
       <?php echo $paginator->sort('Country', 'Country.name');?>
   </th>
    <th>
      <?php echo $paginator->sort('City', 'City.name');?>
   </th>

По first_name и City.name сортирует нормально. А Country отказывется замечать.

В чём моя ошибка?
_________________
No pain, no gain.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
evilbloodydemon

цитировать



Зарегистрирован: 11 Окт 2007 20:32:19
Сообщения: 125

СообщениеДобавлено: 10 Янв 2010 22:12:33    Заголовок сообщения: Ответить с цитатой

Serginho
движок сможет отсортировать по полю ассоциированной таблицы, только если данные из нее выбираются одним запросом с основной таблицей. для связи второго уровня это не так.
для версии 1.2 можно попробовать http://github.com/rafaelbandeira3/linkable
_________________
поздняк метаться - ракеты в воздухе
jabber-конференция по CakePHP - xmpp:cakephp@conference.jabber.ru
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Serginho

цитировать



Зарегистрирован: 27 Ноя 2009 17:19:14
Сообщения: 26

СообщениеДобавлено: 12 Янв 2010 23:51:32    Заголовок сообщения: Ответить с цитатой

Цитата:
* Can be used as a alternative to the ContainableBehavior:
* - On data fetching only in right to left operations,
* wich means that in "one to many" relations (hasMany, hasAndBelongsToMany)


Для моих BelongsTo, к сожалению, не подходит Sad.

Неужели нету других (любых) способов отсортировать по полю 2-го уровня?

Типичная (как мне кажется) задача...
_________________
No pain, no gain.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
evilbloodydemon

цитировать



Зарегистрирован: 11 Окт 2007 20:32:19
Сообщения: 125

СообщениеДобавлено: 13 Янв 2010 09:04:51    Заголовок сообщения: Ответить с цитатой

Цитата:
wich means that in "one to many" relations (hasMany, hasAndBelongsToMany)
should only be used from the "many to one" tables.


все подходит, полностью читать же нужно.
_________________
поздняк метаться - ракеты в воздухе
jabber-конференция по CakePHP - xmpp:cakephp@conference.jabber.ru
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Serginho

цитировать



Зарегистрирован: 27 Ноя 2009 17:19:14
Сообщения: 26

СообщениеДобавлено: 13 Янв 2010 15:46:10    Заголовок сообщения: Ответить с цитатой

evilbloodydemon писал(а):
Цитата:
wich means that in "one to many" relations (hasMany, hasAndBelongsToMany)
should only be used from the "many to one" tables.


все подходит, полностью читать же нужно.


Дело в том, что я сначала установил и попробовал, в результате чего натолкнулся на букет ошибок. (установил и подключил правильно, сомнений нет)

Исходя из этого и начал читать.

Так и не решил данную задачу. Ещё идеи?
_________________
No pain, no gain.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Имя
Сообщение

Смайлики
Very Happy Smile Sad Surprised
Shocked Confused Cool Laughing
Mad Razz Embarassed Crying or Very sad
Evil or Very Mad Twisted Evil Rolling Eyes Wink
Exclamation Question Idea Arrow
Дополнительные смайлики

 
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Cake-PHP.ru -> Общий Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы можете начинать темы
Вы можете отвечать на сообщения
Вы можете редактировать свои сообщения
Вы можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB

Рейтинг@Mail.ru