Skip to content
Snippets Groups Projects
Commit 96c7549a authored by Jean-Baptiste Pasquier's avatar Jean-Baptiste Pasquier
Browse files

Merge branch '251-default-lookup-field' into 'master'

update: defaults lookup_field to model meta setting

Closes #251

See merge request !137
parents 0f5bbdf8 46f1af7a
No related branches found
No related tags found
1 merge request!137update: defaults lookup_field to model meta setting
Pipeline #6225 passed with stage
in 34 seconds
......@@ -250,6 +250,10 @@ class LDPViewSetGenerator(ModelViewSet):
list_actions = {'get': 'list', 'post': 'create'}
detail_actions = {'get': 'retrieve', 'put': 'update', 'patch': 'partial_update', 'delete': 'destroy'}
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.lookup_field = LDPViewSetGenerator.get_lookup_arg(**kwargs)
@classonlymethod
def get_model(cls, **kwargs):
'''gets the model in the arguments or in the viewset definition'''
......@@ -260,7 +264,8 @@ class LDPViewSetGenerator(ModelViewSet):
@classonlymethod
def get_lookup_arg(cls, **kwargs):
return kwargs.get('lookup_url_kwarg') or cls.lookup_url_kwarg or kwargs.get('lookup_field') or cls.lookup_field
return kwargs.get('lookup_url_kwarg') or cls.lookup_url_kwarg or kwargs.get('lookup_field') or \
Model.get_meta(kwargs['model'], 'lookup_field', 'pk') or cls.lookup_field
@classonlymethod
def get_detail_expr(cls, lookup_field=None, **kwargs):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment