|
|
|
Playframerwork, ebean and native sql
|
|||
|---|---|---|---|
|
#18+
Приветствую! Подскажите кто знает...есть метод, который получает список (List) из базы данных. Результат запроса передается в Page и дальше на отображение пользователю. Запрос делаю с помощью native-query. В результате получаю десять строк (p.getList() = 10), но в p.getTotalRowCount() я получаю количество всех элементов таблицы (1000). Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Как поменять или что поменять, чтобы в p.getTotalRowCount() было корректное значение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2015, 14:18 |
|
||
|
Playframerwork, ebean and native sql
|
|||
|---|---|---|---|
|
#18+
Никто не сталкивался с подобной проблемой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2015, 14:53 |
|
||
|
Playframerwork, ebean and native sql
|
|||
|---|---|---|---|
|
#18+
Ну так все верно же? всего по этим условиям 1000 записей, вы получаете первую "страницу". Для работы с пагинацией - то что нужно (вы же используете findPagingList осознанно?). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2015, 16:28 |
|
||
|
Playframerwork, ebean and native sql
|
|||
|---|---|---|---|
|
#18+
Не совсем понял, что "верно"? Я как-то неправильно строю запрос? Если запустить данный запрос в клиенте, то в результате по заданным условиям будет всего 10 записей. То есть, теоретически должно быть, чтобы p.getTotalRowCount() = 10 и p.getList()=10. Может что-то не учел? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2015, 22:55 |
|
||
|
Playframerwork, ebean and native sql
|
|||
|---|---|---|---|
|
#18+
Никаких больше вариантов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2015, 12:03 |
|
||
|
Playframerwork, ebean and native sql
|
|||
|---|---|---|---|
|
#18+
Первая же ссылка в гугле: авторgetTotalRowCount int getTotalRowCount() Return the total row count for all pages. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2015, 12:36 |
|
||
|
Playframerwork, ebean and native sql
|
|||
|---|---|---|---|
|
#18+
Это понятно. Согласно условиям селекта - в результате выдается 10 строк. То есть несмотря на то, что в базе 1000 записей. Селект выдает только 10. Поэтому и страница одна с десятью записями. То бишь, getTotalRowCount() должно равняться 10, а не 1000. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2015, 12:44 |
|
||
|
Playframerwork, ebean and native sql
|
|||
|---|---|---|---|
|
#18+
qi_ip, если вы хотите получить что количество записей 10, то зачем использовать "findPagingList()", который предназначен для пагинации? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2015, 13:01 |
|
||
|
Playframerwork, ebean and native sql
|
|||
|---|---|---|---|
|
#18+
Так, думаю, что не точно изложил задачу, поэтому не до конца понятно, что я хочу получить. Сам запрос динамический, то есть, может выводить все 1000 записей или, при определенных дополнительных условиях (например, username like '%uniq%'), 5 или 10 записей. Но и в том, и в другом случае нужна пагинация. То есть, для пользователя есть настройка выводить по 10 строк на страницу. 10 записей, приведенных в первом посту - это частный пример, так как записей может быть и 5, и 15. По моим измышлениям, в случае: а) если нет никаких дополнительных условий, при запросе должно быть p.getTotalRowCount() = 1000; б) если есть какое-то условие, то p.getTotalRowCount() = 10 или p.getTotalRowCount() = 15; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2015, 15:14 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=126&tid=2125223]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
42ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 374ms |

| 0 / 0 |
