Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
D
django
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
Batuhan Osman TASKAYA
django
Commits
c42123ad
Kaydet (Commit)
c42123ad
authored
Eyl 25, 2015
tarafından
Tim Graham
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Removed redundancy in admin_changelist tests.
üst
afe77763
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
58 additions
and
115 deletions
+58
-115
tests.py
tests/admin_changelist/tests.py
+58
-115
No files found.
tests/admin_changelist/tests.py
Dosyayı görüntüle @
c42123ad
...
...
@@ -32,6 +32,24 @@ from .models import (
)
def
get_changelist_args
(
modeladmin
,
**
kwargs
):
m
=
modeladmin
args
=
(
kwargs
.
pop
(
'list_display'
,
m
.
list_display
),
kwargs
.
pop
(
'list_display_links'
,
m
.
list_display_links
),
kwargs
.
pop
(
'list_filter'
,
m
.
list_filter
),
kwargs
.
pop
(
'date_hierarchy'
,
m
.
date_hierarchy
),
kwargs
.
pop
(
'search_fields'
,
m
.
search_fields
),
kwargs
.
pop
(
'list_select_related'
,
m
.
list_select_related
),
kwargs
.
pop
(
'list_per_page'
,
m
.
list_per_page
),
kwargs
.
pop
(
'list_max_show_all'
,
m
.
list_max_show_all
),
kwargs
.
pop
(
'list_editable'
,
m
.
list_editable
),
m
,
)
assert
not
kwargs
,
"Unexpected kwarg
%
s"
%
kwargs
return
args
@override_settings
(
ROOT_URLCONF
=
"admin_changelist.urls"
)
class
ChangeListTests
(
TestCase
):
...
...
@@ -53,11 +71,10 @@ class ChangeListTests(TestCase):
"""
m
=
ChildAdmin
(
Child
,
custom_site
)
request
=
self
.
factory
.
get
(
'/child/'
)
list_select_related
=
m
.
get_list_select_related
(
request
)
cl
=
ChangeList
(
request
,
Child
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
,
list_select_related
=
m
.
get_list_select_related
(
request
))
)
self
.
assertEqual
(
cl
.
queryset
.
query
.
select_related
,
{
'parent'
:
{
'name'
:
{}}
})
...
...
@@ -65,22 +82,20 @@ class ChangeListTests(TestCase):
def
test_select_related_as_tuple
(
self
):
ia
=
InvitationAdmin
(
Invitation
,
custom_site
)
request
=
self
.
factory
.
get
(
'/invitation/'
)
list_select_related
=
ia
.
get_list_select_related
(
request
)
cl
=
ChangeList
(
request
,
Child
,
ia
.
list_display
,
ia
.
list_display_links
,
ia
.
list_filter
,
ia
.
date_hierarchy
,
ia
.
search_fields
,
list_select_related
,
ia
.
list_per_page
,
ia
.
list_max_show_all
,
ia
.
list_editable
,
ia
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
ia
,
list_select_related
=
ia
.
get_list_select_related
(
request
))
)
self
.
assertEqual
(
cl
.
queryset
.
query
.
select_related
,
{
'player'
:
{}})
def
test_select_related_as_empty_tuple
(
self
):
ia
=
InvitationAdmin
(
Invitation
,
custom_site
)
ia
.
list_select_related
=
()
request
=
self
.
factory
.
get
(
'/invitation/'
)
list_select_related
=
ia
.
get_list_select_related
(
request
)
cl
=
ChangeList
(
request
,
Child
,
ia
.
list_display
,
ia
.
list_display_links
,
ia
.
list_filter
,
ia
.
date_hierarchy
,
ia
.
search_fields
,
list_select_related
,
ia
.
list_per_page
,
ia
.
list_max_show_all
,
ia
.
list_editable
,
ia
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
ia
,
list_select_related
=
ia
.
get_list_select_related
(
request
))
)
self
.
assertEqual
(
cl
.
queryset
.
query
.
select_related
,
False
)
def
test_get_select_related_custom_method
(
self
):
...
...
@@ -92,11 +107,10 @@ class ChangeListTests(TestCase):
ia
=
GetListSelectRelatedAdmin
(
Invitation
,
custom_site
)
request
=
self
.
factory
.
get
(
'/invitation/'
)
list_select_related
=
ia
.
get_list_select_related
(
request
)
cl
=
ChangeList
(
request
,
Child
,
ia
.
list_display
,
ia
.
list_display_links
,
ia
.
list_filter
,
ia
.
date_hierarchy
,
ia
.
search_fields
,
list_select_related
,
ia
.
list_per_page
,
ia
.
list_max_show_all
,
ia
.
list_editable
,
ia
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
ia
,
list_select_related
=
ia
.
get_list_select_related
(
request
))
)
self
.
assertEqual
(
cl
.
queryset
.
query
.
select_related
,
{
'player'
:
{},
'band'
:
{}})
def
test_result_list_empty_changelist_value
(
self
):
...
...
@@ -107,11 +121,7 @@ class ChangeListTests(TestCase):
new_child
=
Child
.
objects
.
create
(
name
=
'name'
,
parent
=
None
)
request
=
self
.
factory
.
get
(
'/child/'
)
m
=
ChildAdmin
(
Child
,
custom_site
)
list_display
=
m
.
get_list_display
(
request
)
list_display_links
=
m
.
get_list_display_links
(
request
,
list_display
)
cl
=
ChangeList
(
request
,
Child
,
list_display
,
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
cl
.
formset
=
None
template
=
Template
(
'{
%
load admin_list
%
}{
%
spaceless
%
}{
%
result_list cl
%
}{
%
endspaceless
%
}'
)
context
=
Context
({
'cl'
:
cl
})
...
...
@@ -133,11 +143,7 @@ class ChangeListTests(TestCase):
# Set a new empty display value on AdminSite.
admin
.
site
.
empty_value_display
=
'???'
m
=
ChildAdmin
(
Child
,
admin
.
site
)
list_display
=
m
.
get_list_display
(
request
)
list_display_links
=
m
.
get_list_display_links
(
request
,
list_display
)
cl
=
ChangeList
(
request
,
Child
,
list_display
,
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
cl
.
formset
=
None
template
=
Template
(
'{
%
load admin_list
%
}{
%
spaceless
%
}{
%
result_list cl
%
}{
%
endspaceless
%
}'
)
context
=
Context
({
'cl'
:
cl
})
...
...
@@ -157,11 +163,7 @@ class ChangeListTests(TestCase):
new_child
=
Child
.
objects
.
create
(
name
=
'name'
,
parent
=
None
)
request
=
self
.
factory
.
get
(
'/child/'
)
m
=
EmptyValueChildAdmin
(
Child
,
admin
.
site
)
list_display
=
m
.
get_list_display
(
request
)
list_display_links
=
m
.
get_list_display_links
(
request
,
list_display
)
cl
=
ChangeList
(
request
,
Child
,
list_display
,
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
cl
.
formset
=
None
template
=
Template
(
'{
%
load admin_list
%
}{
%
spaceless
%
}{
%
result_list cl
%
}{
%
endspaceless
%
}'
)
context
=
Context
({
'cl'
:
cl
})
...
...
@@ -183,11 +185,7 @@ class ChangeListTests(TestCase):
new_child
=
Child
.
objects
.
create
(
name
=
'name'
,
parent
=
new_parent
)
request
=
self
.
factory
.
get
(
'/child/'
)
m
=
ChildAdmin
(
Child
,
custom_site
)
list_display
=
m
.
get_list_display
(
request
)
list_display_links
=
m
.
get_list_display_links
(
request
,
list_display
)
cl
=
ChangeList
(
request
,
Child
,
list_display
,
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
cl
.
formset
=
None
template
=
Template
(
'{
%
load admin_list
%
}{
%
spaceless
%
}{
%
result_list cl
%
}{
%
endspaceless
%
}'
)
context
=
Context
({
'cl'
:
cl
})
...
...
@@ -218,9 +216,7 @@ class ChangeListTests(TestCase):
m
.
list_display
=
[
'id'
,
'name'
,
'parent'
]
m
.
list_display_links
=
[
'id'
]
m
.
list_editable
=
[
'name'
]
cl
=
ChangeList
(
request
,
Child
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
FormSet
=
m
.
get_changelist_formset
(
request
)
cl
.
formset
=
FormSet
(
queryset
=
cl
.
result_list
)
template
=
Template
(
'{
%
load admin_list
%
}{
%
spaceless
%
}{
%
result_list cl
%
}{
%
endspaceless
%
}'
)
...
...
@@ -249,7 +245,6 @@ class ChangeListTests(TestCase):
"""
Regression test for #14312: list_editable with pagination
"""
new_parent
=
Parent
.
objects
.
create
(
name
=
'parent'
)
for
i
in
range
(
200
):
Child
.
objects
.
create
(
name
=
'name
%
s'
%
i
,
parent
=
new_parent
)
...
...
@@ -260,10 +255,8 @@ class ChangeListTests(TestCase):
m
.
list_display
=
[
'id'
,
'name'
,
'parent'
]
m
.
list_display_links
=
[
'id'
]
m
.
list_editable
=
[
'name'
]
self
.
assertRaises
(
IncorrectLookupParameters
,
lambda
:
ChangeList
(
request
,
Child
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
))
with
self
.
assertRaises
(
IncorrectLookupParameters
):
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
@ignore_warnings
(
category
=
RemovedInDjango20Warning
)
def
test_result_list_with_allow_tags
(
self
):
...
...
@@ -284,11 +277,7 @@ class ChangeListTests(TestCase):
m
.
custom_method
=
custom_method
m
.
list_display
=
[
'id'
,
'name'
,
'parent'
,
'custom_method'
]
cl
=
ChangeList
(
request
,
Child
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
FormSet
=
m
.
get_changelist_formset
(
request
)
cl
.
formset
=
FormSet
(
queryset
=
cl
.
result_list
)
template
=
Template
(
'{
%
load admin_list
%
}{
%
spaceless
%
}{
%
result_list cl
%
}{
%
endspaceless
%
}'
)
...
...
@@ -305,10 +294,7 @@ class ChangeListTests(TestCase):
request
=
self
.
factory
.
get
(
'/child/'
)
m
=
CustomPaginationAdmin
(
Child
,
custom_site
)
cl
=
ChangeList
(
request
,
Child
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
cl
.
get_results
(
request
)
self
.
assertIsInstance
(
cl
.
paginator
,
CustomPaginator
)
...
...
@@ -326,11 +312,7 @@ class ChangeListTests(TestCase):
m
=
BandAdmin
(
Band
,
custom_site
)
request
=
self
.
factory
.
get
(
'/band/'
,
data
=
{
'genres'
:
blues
.
pk
})
cl
=
ChangeList
(
request
,
Band
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Band
,
*
get_changelist_args
(
m
))
cl
.
get_results
(
request
)
# There's only one Group instance
...
...
@@ -349,11 +331,7 @@ class ChangeListTests(TestCase):
m
=
GroupAdmin
(
Group
,
custom_site
)
request
=
self
.
factory
.
get
(
'/group/'
,
data
=
{
'members'
:
lead
.
pk
})
cl
=
ChangeList
(
request
,
Group
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Group
,
*
get_changelist_args
(
m
))
cl
.
get_results
(
request
)
# There's only one Group instance
...
...
@@ -374,11 +352,7 @@ class ChangeListTests(TestCase):
m
=
ConcertAdmin
(
Concert
,
custom_site
)
request
=
self
.
factory
.
get
(
'/concert/'
,
data
=
{
'group__members'
:
lead
.
pk
})
cl
=
ChangeList
(
request
,
Concert
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Concert
,
*
get_changelist_args
(
m
))
cl
.
get_results
(
request
)
# There's only one Concert instance
...
...
@@ -398,11 +372,7 @@ class ChangeListTests(TestCase):
m
=
QuartetAdmin
(
Quartet
,
custom_site
)
request
=
self
.
factory
.
get
(
'/quartet/'
,
data
=
{
'members'
:
lead
.
pk
})
cl
=
ChangeList
(
request
,
Quartet
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Quartet
,
*
get_changelist_args
(
m
))
cl
.
get_results
(
request
)
# There's only one Quartet instance
...
...
@@ -422,11 +392,7 @@ class ChangeListTests(TestCase):
m
=
ChordsBandAdmin
(
ChordsBand
,
custom_site
)
request
=
self
.
factory
.
get
(
'/chordsband/'
,
data
=
{
'members'
:
lead
.
pk
})
cl
=
ChangeList
(
request
,
ChordsBand
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
ChordsBand
,
*
get_changelist_args
(
m
))
cl
.
get_results
(
request
)
# There's only one ChordsBand instance
...
...
@@ -445,11 +411,7 @@ class ChangeListTests(TestCase):
m
=
ParentAdmin
(
Parent
,
custom_site
)
request
=
self
.
factory
.
get
(
'/parent/'
,
data
=
{
'child__name'
:
'Daniel'
})
cl
=
ChangeList
(
request
,
Parent
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Parent
,
*
get_changelist_args
(
m
))
# Make sure distinct() was called
self
.
assertEqual
(
cl
.
queryset
.
count
(),
1
)
...
...
@@ -465,11 +427,7 @@ class ChangeListTests(TestCase):
m
=
ParentAdmin
(
Parent
,
custom_site
)
request
=
self
.
factory
.
get
(
'/parent/'
,
data
=
{
SEARCH_VAR
:
'daniel'
})
cl
=
ChangeList
(
request
,
Parent
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Parent
,
*
get_changelist_args
(
m
))
# Make sure distinct() was called
self
.
assertEqual
(
cl
.
queryset
.
count
(),
1
)
...
...
@@ -488,11 +446,7 @@ class ChangeListTests(TestCase):
m
=
ConcertAdmin
(
Concert
,
custom_site
)
request
=
self
.
factory
.
get
(
'/concert/'
,
data
=
{
SEARCH_VAR
:
'vox'
})
cl
=
ChangeList
(
request
,
Concert
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Concert
,
*
get_changelist_args
(
m
))
# There's only one Concert instance
self
.
assertEqual
(
cl
.
queryset
.
count
(),
1
)
...
...
@@ -510,20 +464,14 @@ class ChangeListTests(TestCase):
# Test default queryset
m
=
ChildAdmin
(
Child
,
custom_site
)
cl
=
ChangeList
(
request
,
Child
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
self
.
assertEqual
(
cl
.
queryset
.
count
(),
60
)
self
.
assertEqual
(
cl
.
paginator
.
count
,
60
)
self
.
assertEqual
(
list
(
cl
.
paginator
.
page_range
),
[
1
,
2
,
3
,
4
,
5
,
6
])
# Test custom queryset
m
=
FilteredChildAdmin
(
Child
,
custom_site
)
cl
=
ChangeList
(
request
,
Child
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
self
.
assertEqual
(
cl
.
queryset
.
count
(),
30
)
self
.
assertEqual
(
cl
.
paginator
.
count
,
30
)
self
.
assertEqual
(
list
(
cl
.
paginator
.
page_range
),
[
1
,
2
,
3
])
...
...
@@ -594,20 +542,18 @@ class ChangeListTests(TestCase):
# Test valid "show all" request (number of total objects is under max)
m
=
ChildAdmin
(
Child
,
custom_site
)
m
.
list_max_show_all
=
200
# 200 is the max we'll pass to ChangeList
cl
=
ChangeList
(
request
,
Child
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
200
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
cl
.
get_results
(
request
)
self
.
assertEqual
(
len
(
cl
.
result_list
),
60
)
# Test invalid "show all" request (number of total objects over max)
# falls back to paginated pages
m
=
ChildAdmin
(
Child
,
custom_site
)
m
.
list_max_show_all
=
30
# 30 is the max we'll pass to ChangeList for this test
cl
=
ChangeList
(
request
,
Child
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
30
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Child
,
*
get_changelist_args
(
m
))
cl
.
get_results
(
request
)
self
.
assertEqual
(
len
(
cl
.
result_list
),
10
)
...
...
@@ -791,10 +737,7 @@ class ChangeListTests(TestCase):
# instantiating and setting up ChangeList object
m
=
GroupAdmin
(
Group
,
custom_site
)
request
=
self
.
factory
.
get
(
'/group/'
)
cl
=
ChangeList
(
request
,
Group
,
m
.
list_display
,
m
.
list_display_links
,
m
.
list_filter
,
m
.
date_hierarchy
,
m
.
search_fields
,
m
.
list_select_related
,
m
.
list_per_page
,
m
.
list_max_show_all
,
m
.
list_editable
,
m
)
cl
=
ChangeList
(
request
,
Group
,
*
get_changelist_args
(
m
))
per_page
=
cl
.
list_per_page
=
10
for
page_num
,
objects_count
,
expected_page_range
in
[
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment