8000 Fix logic error in QuerySet.__iter__ · tableau/server-client-python@af99866 · GitHub
[go: up one dir, main page]

Skip to content

Commit af99866

Browse files
Jordan WoodsJordan Woods
Jordan Woods
authored and
Jordan Woods
committed
Fix logic error in QuerySet.__iter__
1 parent c5d96b6 commit af99866

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

tableauserverclient/server/query.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,15 @@ def __init__(self, model):
1717

1818

1919
def __iter__(self):
20-
for page in range(math.ceil(self.total_available / self.page_size)):
20+
self.request_options.pagenumber = 1
21+
total = self.total_available
22+
size = self.page_size
23+
yield from self._result_cache
24+
for page in range(1, math.ceil(total / size)):
25+
self.request_options.pagenumber = page + 1
26+
self._result_cache = None
27+
self._fetch_all()
2128
yield from self._result_cache
22-
self._pagination_item.pagenumber = page
23-
self._load_next_page()
2429

2530

2631
def __getitem__(self, k):
@@ -100,7 +105,3 @@ def _parse_shorthand_sort(self, key):
100105
if key not in RequestOptions.Field.__dict__.values():
101106
raise ValueError("Sort key name %s is not valid.", key)
102107
return (key, direction)
103-
104-
def _load_next_page(self):
105-
self.request_options.pagenumber += 1
106-
self._result_cache, self._pagination_item = self.model.get(self.request_options)

0 commit comments

Comments
 (0)
0