Skip to content

Commit 4afb1bf

Browse files
committed
Fixed DQL paging
1 parent 7d501c8 commit 4afb1bf

File tree

3 files changed

+22
-7
lines changed

3 files changed

+22
-7
lines changed

README.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,19 @@ async def fetch_example_results():
6868
name="Elysium"
6969
)
7070

71+
# Item search with paging
72+
item = await client.index_search(
73+
name="Eden",
74+
indexes=["Item"],
75+
columns=["ID", "Name"],
76+
filters=[
77+
Filter("LevelItem", "gt", 520)
78+
],
79+
sort=Sort("LevelItem", False),
80+
page=0,
81+
per_page=10
82+
)
83+
7184
# Fuzzy search XIVAPI game data for a recipe by name. Results will be in English.
7285
recipe = await client.index_search(
7386
name="Crimson Cider",
@@ -92,8 +105,7 @@ async def fetch_example_results():
92105
)
93106

94107
filters = [
95-
Filter("ClassJobLevel", "gte", 0),
96-
Filter("ClassJobCategory", "gt", 0),
108+
Filter("ClassJobLevel", "gte", 0)
97109
]
98110

99111
# Get non-npc actions matching a given term (Defiance)

pyxivapi/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
__author__ = 'Lethys'
33
__license__ = 'MIT'
44
__copyright__ = 'Copyright 2019 (c) Lethys'
5-
__version__ = '0.5.0'
5+
__version__ = '0.5.1'
66

77
from .client import XIVAPIClient
88
from .exceptions import (

pyxivapi/client.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,11 @@
33

44
from aiohttp import ClientSession
55

6-
from .exceptions import XIVAPIBadRequest, XIVAPIForbidden, XIVAPINotFound, XIVAPIServiceUnavailable, \
7-
XIVAPIInvalidLanguage, XIVAPIError, XIVAPIInvalidIndex, XIVAPIInvalidColumns, XIVAPIInvalidAlgo
6+
from .exceptions import (
7+
XIVAPIBadRequest, XIVAPIForbidden, XIVAPINotFound, XIVAPIServiceUnavailable,
8+
XIVAPIInvalidLanguage, XIVAPIError, XIVAPIInvalidIndex, XIVAPIInvalidColumns,
9+
XIVAPIInvalidAlgo
10+
)
811
from .decorators import timed
912
from .models import Filter, Sort
1013

@@ -218,7 +221,7 @@ async def pvpteam_by_id(self, lodestone_id):
218221
return await self.process_response(response)
219222

220223
@timed
221-
async def index_search(self, name, indexes=(), columns=(), filters: List[Filter] = (), sort: Sort = None, page=1, per_page=10, language="en", string_algo="match"):
224+
async def index_search(self, name, indexes=(), columns=(), filters: List[Filter] = (), sort: Sort = None, page=0, per_page=10, language="en", string_algo="match"):
222225
"""|coro|
223226
Search for data from on specific indexes.
224227
Parameters
@@ -304,7 +307,7 @@ async def index_search(self, name, indexes=(), columns=(), filters: List[Filter]
304307
}]
305308
}
306309
},
307-
"from": (page * per_page),
310+
"from": page,
308311
"size": per_page
309312
}
310313
}

0 commit comments

Comments
 (0)