master
๋ถ๊ธฐ์ ํด๋น ๋ฌธ์ ๊ฐ ์์์ ํ์ธํ์ต๋๋ค.์์งํ ๋งํด์ ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ์๋ง๋ ๋น ํ์ด์ง์ผ ๊ฒ์ ๋๋ค.
Traceback (most recent call last):
File "/var/env/lib/python3.6/site-packages/django/contrib/staticfiles/handlers.py", line 65, in __call__
return self.application(environ, start_response)
File "/var/env/lib/python3.6/site-packages/django/core/handlers/wsgi.py", line 142, in __call__
response = self.get_response(request)
File "/var/env/lib/python3.6/site-packages/django/core/handlers/base.py", line 78, in get_response
response = self._middleware_chain(request)
File "/var/env/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
response = response_for_exception(request, exc)
File "/var/env/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
File "/var/env/lib/python3.6/site-packages/django/core/handlers/exception.py", line 125, in handle_uncaught_exception
return debug.technical_500_response(request, *exc_info)
File "/var/env/lib/python3.6/site-packages/django_extensions/management/technical_response.py", line 37, in null_technical_500_response
six.reraise(exc_type, exc_value, tb)
File "/var/env/lib/python3.6/site-packages/six.py", line 692, in reraise
raise value.with_traceback(tb)
File "/var/env/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
response = get_response(request)
File "/var/env/lib/python3.6/site-packages/django/core/handlers/base.py", line 126, in _get_response
response = self.process_exception_by_middleware(e, request)
File "/var/env/lib/python3.6/site-packages/django/core/handlers/base.py", line 124, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/var/env/lib/python3.6/site-packages/django/views/decorators/csrf.py", line 54, in wrapped_view
return view_func(*args, **kwargs)
File "/var/env/lib/python3.6/site-packages/rest_framework/viewsets.py", line 116, in view
return self.dispatch(request, *args, **kwargs)
File "/var/env/lib/python3.6/site-packages/rest_framework/views.py", line 495, in dispatch
response = self.handle_exception(exc)
File "/var/env/lib/python3.6/site-packages/rest_framework/views.py", line 455, in handle_exception
self.raise_uncaught_exception(exc)
File "/var/env/lib/python3.6/site-packages/rest_framework/views.py", line 492, in dispatch
response = handler(request, *args, **kwargs)
File "/var/env/lib/python3.6/site-packages/rest_framework/mixins.py", line 45, in list
return self.get_paginated_response(serializer.data)
File "/var/env/lib/python3.6/site-packages/rest_framework/generics.py", line 180, in get_paginated_response
return self.paginator.get_paginated_response(data)
File "/var/env/lib/python3.6/site-packages/rest_framework/pagination.py", line 781, in get_paginated_response
('previous', self.get_previous_link()),
File "/var/env/lib/python3.6/site-packages/rest_framework/pagination.py", line 643, in get_previous_link
compare = self._get_position_from_instance(self.page[0], self.ordering)
IndexError: list index out of range
ํด๋ณผ๋ ค๊ณ ํฉ๋๋ค. 4์ 15์ผ๊น์ง ๋์๊ฒ์ ์์์ด ์์ผ๋ฉด ๋ด๊ฐ ๋ ์ด์ ๋ด์ค์ ๋์ค์ง ์๋๋ค๊ณ ์๊ฐํ์ญ์์ค.
๊ธฐ๋ก์ ์ํด ํฐ์ผ์ ์ ํํ ๋จ๊ณ๋ฅผ ๋ฐ๋ฅผ ๋ ๋ฐ๋ฐํ ์ ์์ง๋ง 1ํ์ด์ง๋ก ๋์๊ฐ๋ ค๊ณ ํ๋ฉด ๋์ผํ ์ญ์ถ์ ์ ๊ฐ๊ฒ ๋ฉ๋๋ค.
์ ๋ณด ์ถ๊ฐ: ์ปค์ ํ์ด์ง ๋งค๊น์๋ ์์น, ์คํ์ ๋ฐ ์ปค์์ 3๊ฐ์ง ๋งค๊ฐ๋ณ์๊ฐ ์์ ์ ์์ต๋๋ค. ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ๋ฒ๊ทธ๊ฐ ํธ๋ฆฌ๊ฑฐ๋ฉ๋๋ค.
์ด๋ self.page
์์ฑ์ด ๋น์ด ์๊ณ ํ์ด์ง์ "๊ณ ์ ํ" ์์๊ฐ ์๋ค๊ณ ๊ฐ์ ํ๊ณ ํ์ด์ง๊ฐ ๋์ผํ ์์น๋ฅผ ๊ฐ์ง ์์๋ง ํฌํจํ๋ ๊ฒ์ผ๋ก ๊ฐ์ ํ๋ฏ๋ก ์๊ณ ๋ฆฌ์ฆ์ด ์คํ์
์ ์ฌ์ฉํ๋๋ก ํด๊ฒฐํ๊ธฐ ๋๋ฌธ์
๋๋ค. - ๊ธฐ๋ฐ ์ฃผ๋ฌธ.
๋ค์ ์๊ฒฌ:
... ์ค๋ฅ๋ฅผ ํฌํจํฉ๋๋ค. ํ์ด์ง๊ฐ ๋น์ด ์์ผ๋ฉด ์ด ๊ฐ์ ์ ์๋ชป๋ ๊ฒ์ ๋๋ค.
๋ก์ง์ ์์ ํ๊ณ ์๊ณ ๋ฆฌ์ฆ์ ํ์ด์ง๊ฐ ๋น์ด ์๋์ง ํ์ธํ ๋ค์ ์์น๋ฅผ previous_position
/ next_position
๋ก ์ค์ ํ๋ฉด ์ด ๋ฒ๊ทธ๋ฅผ ์ ๊ฑฐํ๊ธฐ์ ์ถฉ๋ถํฉ๋๋ค.
ํ๋ณด๊ฐ ์ด์ด์ง๋๋ค.
@ewjoachim ๊ณผ @tomchristie ๊ฐ์ฌํฉ๋๋ค ๐
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
@ewjoachim ๊ณผ @tomchristie ๊ฐ์ฌํฉ๋๋ค ๐