From 6c36c9c2fbbd5ab8de925920114d122b75875acd Mon Sep 17 00:00:00 2001
From: Sylvain Le Bon <sylvain@happy-dev.fr>
Date: Wed, 25 Apr 2018 23:36:16 +0200
Subject: [PATCH] update: published module

---
 .gitignore                                    |  2 ++
 __init__.py => djangoldp/__init__.py          |  0
 admin.py => djangoldp/admin.py                |  0
 apps.py => djangoldp/apps.py                  |  0
 .../migrations}/0001_initial.py               |  0
 .../migrations}/__init__.py                   |  0
 models.py => djangoldp/models.py              |  0
 serializers.py => djangoldp/serializers.py    |  0
 tests.py => djangoldp/tests.py                |  0
 views.py => djangoldp/views.py                | 18 +++++++++++-------
 setup.py                                      | 19 +++++++++++++++++++
 11 files changed, 32 insertions(+), 7 deletions(-)
 rename __init__.py => djangoldp/__init__.py (100%)
 rename admin.py => djangoldp/admin.py (100%)
 rename apps.py => djangoldp/apps.py (100%)
 rename {migrations => djangoldp/migrations}/0001_initial.py (100%)
 rename {migrations => djangoldp/migrations}/__init__.py (100%)
 rename models.py => djangoldp/models.py (100%)
 rename serializers.py => djangoldp/serializers.py (100%)
 rename tests.py => djangoldp/tests.py (100%)
 rename views.py => djangoldp/views.py (86%)
 create mode 100644 setup.py

diff --git a/.gitignore b/.gitignore
index f3d74a9a..e8d72a0a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,4 @@
+dist
+*.egg-info
 *.pyc
 *~
diff --git a/__init__.py b/djangoldp/__init__.py
similarity index 100%
rename from __init__.py
rename to djangoldp/__init__.py
diff --git a/admin.py b/djangoldp/admin.py
similarity index 100%
rename from admin.py
rename to djangoldp/admin.py
diff --git a/apps.py b/djangoldp/apps.py
similarity index 100%
rename from apps.py
rename to djangoldp/apps.py
diff --git a/migrations/0001_initial.py b/djangoldp/migrations/0001_initial.py
similarity index 100%
rename from migrations/0001_initial.py
rename to djangoldp/migrations/0001_initial.py
diff --git a/migrations/__init__.py b/djangoldp/migrations/__init__.py
similarity index 100%
rename from migrations/__init__.py
rename to djangoldp/migrations/__init__.py
diff --git a/models.py b/djangoldp/models.py
similarity index 100%
rename from models.py
rename to djangoldp/models.py
diff --git a/serializers.py b/djangoldp/serializers.py
similarity index 100%
rename from serializers.py
rename to djangoldp/serializers.py
diff --git a/tests.py b/djangoldp/tests.py
similarity index 100%
rename from tests.py
rename to djangoldp/tests.py
diff --git a/views.py b/djangoldp/views.py
similarity index 86%
rename from views.py
rename to djangoldp/views.py
index f70d107b..627ccbc5 100644
--- a/views.py
+++ b/djangoldp/views.py
@@ -53,7 +53,7 @@ class LDPViewSetGenerator(ModelViewSet):
         related_field = kwargs['model']._meta.get_field(nested_field)
         related_name = related_field.related_query_name()
         related_model = related_field.related_model
-        nested_lookup_field = model_name+'_id'
+        nested_lookup_field = related_model._meta.object_name.lower()+'_id'
         
         nested_args = {
              'model': related_model,
@@ -63,9 +63,12 @@ class LDPViewSetGenerator(ModelViewSet):
              'nested_related_name': related_name
         }
         nested_detail_url = cls.get_detail_url(nested_lookup_field, base_url)
+#        return [
+#            url(base_url+'$', cls.as_view(cls.list_actions, **nested_args), name='{}-{}-list'.format(model_name, nested_field)),
+#            url(nested_detail_url+'$', cls.as_view(cls.detail_actions, **nested_args), name='{}-{}-detail'.format(model_name, nested_field)),
+#        ]
         return [
-            url(base_url+'$', cls.as_view(cls.list_actions, **nested_args), name='{}-{}-list'.format(model_name, nested_field)),
-            url(nested_detail_url+'$', cls.as_view(cls.detail_actions, **nested_args), name='{}-{}-detail'.format(model_name, nested_field)),
+            url(base_url+'$', cls.as_view(cls.detail_actions, **nested_args), name='{}-{}-detail'.format(model_name, nested_field)),
         ]
     
     @classonlymethod
@@ -74,10 +77,11 @@ class LDPViewSetGenerator(ModelViewSet):
         model_name = kwargs['model']._meta.object_name.lower()
         detail_url = cls.get_detail_url(**kwargs)
         
-        return include([
-            url(r'^$', cls.as_view(cls.list_actions, **kwargs), name='{}-list'.format(model_name)),
-            url(detail_url+'$', cls.as_view(cls.detail_actions, **kwargs), name='{}-detail'.format(model_name)),
-        ] + cls.get_nested_urls(detail_url, model_name, **kwargs))
+        return include(
+            cls.get_nested_urls(detail_url, model_name, **kwargs) + [
+                url(r'^$', cls.as_view(cls.list_actions, **kwargs), name='{}-list'.format(model_name)),
+                url(detail_url+'$', cls.as_view(cls.detail_actions, **kwargs), name='{}-detail'.format(model_name)),
+            ])
 
 class LDPViewSet(LDPViewSetGenerator):
     model = None
diff --git a/setup.py b/setup.py
new file mode 100644
index 00000000..456f2af7
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,19 @@
+from setuptools import setup
+
+setup(
+    name='djangoldp',
+    version='0.2.0',
+    url='https://git.happy-dev.fr/happy-dev/djangoldp/',
+    author="Startin'blox",
+    author_email='sylvain@happy-dev.fr',
+    description='Linked Data Platform interface for Django Rest Framework',
+    packages=['djangoldp'],
+    zip_safe=False,
+    platforms='any',
+    license='MIT',
+    install_requires=[
+        'django>=1.11',
+        'django_rest_framework',
+        'pyld',
+    ],
+)
-- 
GitLab