File tree Expand file tree Collapse file tree 2 files changed +14
-4
lines changed Expand file tree Collapse file tree 2 files changed +14
-4
lines changed Original file line number Diff line number Diff line change 1515pytestmark = pytest .mark .django_db
1616
1717
18+ class NonModelResourceSerializer (serializers .Serializer ):
19+ class Meta :
20+ resource_name = 'users'
21+
22+
1823class ResourceSerializer (serializers .ModelSerializer ):
1924 class Meta :
2025 fields = ('username' ,)
@@ -51,6 +56,11 @@ def test_get_resource_name():
5156 view .serializer_class .Meta .resource_name = 'rcustom'
5257 assert 'rcustom' == utils .get_resource_name (context ), 'set on serializer'
5358
59+ view = GenericAPIView ()
60+ view .serializer_class = NonModelResourceSerializer
61+ context = {'view' : view }
62+ assert 'users' == utils .get_resource_name (context ), 'derived from non-model serializer'
63+
5464
5565def test_format_keys ():
5666 underscored = {
Original file line number Diff line number Diff line change @@ -214,10 +214,10 @@ def get_resource_type_from_manager(manager):
214214
215215
216216def get_resource_type_from_serializer (serializer ):
217- return getattr (
218- serializer .Meta ,
219- 'resource_name' ,
220- get_resource_type_from_model (serializer .Meta .model ) )
217+ if hasattr ( serializer . Meta , 'resource_name' ):
218+ return serializer .Meta . resource_name
219+ else :
220+ return get_resource_type_from_model (serializer .Meta .model )
221221
222222
223223def get_included_serializers (serializer ):
You can’t perform that action at this time.
0 commit comments