Возникли проблемы с модулем Query Engine Expression при использовании предложения limit - PullRequest
0 голосов
/ 05 января 2011

Ну, я ударил IRC без везения, попробовал форум сообщений без везения.Я попробую старый верный StackOverflow.

Я использую ExpressionEngine 2.1 и использую модуль запросов для генерации списка участников.Список участников довольно большой, и я хотел бы разбить его на страницы.Согласно docs , я использую мое предложение limit за пределами моего оператора sql.

Вот запрос:

{exp:query sql="SELECT * FROM exp_members WHERE group_id=5 OR group_id=7 OR group_id=8 OR group_id=9 OR group_id=10 OR group_id=11 OR group_id=12" limit="10"  paginate="bottom"}

Страница все еще пытается захватить всех участников,зависает, и отображает ошибку нехватки памяти.Если я жестко закодирую предложение limit в выражении sql, оно вернется, как и ожидалось, но тогда я потеряю нумерацию страниц.Попытка не писать новый код нумерации страниц.

Кто-нибудь испытывает это и есть решение, или какие-либо идеи?

Ответы [ 2 ]

1 голос
/ 03 мая 2012

Попробуйте использовать оператор IN и выберите только нужные поля вместо подстановочного знака.

{exp:query limit="10" paginate="bottom" sql="SELECT member_id, screen_name FROM exp_members WHERE group_id IN (5, 7, 8, 9, 10, 11, 12)"}
0 голосов
/ 05 января 2011

Ну, как я понимаю, функция limit в теге запроса не ограничивает ваш набор результатов, поэтому страница зависает.Функция предела устанавливает, сколько результатов вы показываете на странице при использовании нумерации страниц.Вам нужно будет использовать ограничение на запрос для того, что вы хотите.Надеюсь, эта информация поможет.

...