Просмотр исходного кода

user edit, admin changes and csv export

Juan Carlos 4 лет назад
Родитель
Сommit
4ce7678457

+ 13 - 3
marktplatz/admin.py

@@ -1,18 +1,28 @@
 from django.contrib import admin
 from django.contrib import admin
+from csvexport.actions import csvexport
 
 
 # Register your models here.
 # Register your models here.
 from .models import *
 from .models import *
 
 
-admin.site.register(Product)
-admin.site.register(SearchAgent)
+#admin.site.register(Product)
 admin.site.register(Wohnprojekt)
 admin.site.register(Wohnprojekt)
 
 
 # admin.site.register(Description)
 # admin.site.register(Description)
 admin.site.register(Media)
 admin.site.register(Media)
 # admin.site.register(Link)
 # admin.site.register(Link)
 # admin.site.register(Credit)
 # admin.site.register(Credit)
-admin.site.register(Contact)
+class ContactAdmin(admin.ModelAdmin):
+    actions = [csvexport]
+    pass
 
 
+admin.site.register(Contact, ContactAdmin)
+
+class SearchAgentAdmin(admin.ModelAdmin):
+    actions = [csvexport]
+    fields = ['email',]
+    pass
+
+admin.site.register(SearchAgent, SearchAgentAdmin)
 # admin.site.register(Interaction)
 # admin.site.register(Interaction)
 # admin.site.register(Vote)
 # admin.site.register(Vote)
 admin.site.register(Video)
 admin.site.register(Video)

+ 1 - 1
marktplatz/models.py

@@ -49,7 +49,7 @@ class Contact(models.Model):
     website = URLField(verbose_name="Website", blank=True)
     website = URLField(verbose_name="Website", blank=True)
 
 
     def user_can_manage(self, user):
     def user_can_manage(self, user):
-        return user.contact.id == self.contact.id
+        return user.contact.id == self.id
 
 
     def __str__(self):
     def __str__(self):
         return self.first_name + ' ' + self.last_name
         return self.first_name + ' ' + self.last_name

+ 1 - 1
marktplatz/urls.py

@@ -15,7 +15,7 @@ urlpatterns = [
 
 
     # Contact
     # Contact
     path('register/', views.registerView.as_view(), name='register-view'),
     path('register/', views.registerView.as_view(), name='register-view'),
-    path('meine-daten/', views.ContactUpdateView.as_view(), name='meine-daten'),
+    path('meine-daten/<int:pk>/', views.ContactUpdateView.as_view(), name='meine-daten'),
 
 
 
 
     path('products-list/', views.ProductsListView.as_view(), name='products-list'),
     path('products-list/', views.ProductsListView.as_view(), name='products-list'),

+ 1 - 1
marktplatz/views.py

@@ -111,7 +111,7 @@ class ContactUpdateView(LoginRequiredMixin, UpdateView):
     template_name = 'marktplatz/form.html'
     template_name = 'marktplatz/form.html'
     model = Contact
     model = Contact
     form_class = RegisterForm
     form_class = RegisterForm
-    # success_url =
+    success_url = reverse_lazy('index')
 
 
     def get_object(self, queryset=None):
     def get_object(self, queryset=None):
         obj = super().get_object()
         obj = super().get_object()

+ 1 - 0
project_base/settings.py

@@ -239,6 +239,7 @@ INSTALLED_APPS = [
     'django_user_agents',
     'django_user_agents',
     'email_obfuscator',
     'email_obfuscator',
     'compressor',
     'compressor',
+    'csvexport',
 
 
     'project_base.apps.PostOfficeBase',
     'project_base.apps.PostOfficeBase',
     'project_base.apps.project_base',
     'project_base.apps.project_base',

+ 6 - 0
project_base/templates/base_generic.html

@@ -258,6 +258,12 @@
       </div>
       </div>
     </li>
     </li>
 
 
+    <li class="nav-item">
+      <div class="mab-nav-fix">
+        <a class=" nav-link active nav-right boldkur mab-menu-elm" style="" href="{% url 'meine-daten' pk=request.user.contact.id %}">Meine Daten</a>
+      </div>
+    </li>
+
       {% if request.user.is_superuser %}
       {% if request.user.is_superuser %}
       <li class="nav-item">
       <li class="nav-item">
         <div class="mab-nav-fix">
         <div class="mab-nav-fix">

+ 1 - 0
requirements.txt

@@ -25,3 +25,4 @@ user-agents==2.2.0
 django-user-agents==0.4
 django-user-agents==0.4
 django-compressor==2.4
 django-compressor==2.4
 django-settings-export==1.2.1
 django-settings-export==1.2.1
+django-admin-csvexport==1.11