1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| #!/usr/bin/env python
# -*- coding: utf-8 -*-
from django.contrib import admin
from .models import Customer
from django import forms
from myUser.models import User
class CustomerCreationForm(forms.ModelForm):
pass
class CustomerChangeForm(forms.ModelForm):
class Meta:
model = Customer
#fields = ("__all__")
fields = ('fidelite','newsletter','customerSponsor')
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
customer_id = kwargs.pop('instance').id
self.fields['customerSponsor'].queryset = Customer.objects.exclude(id=customer_id)
for user_id in Customer.objects.values_list('myUser', flat=True).order_by('myUser'):
user = User.objects.filter(id=user_id).values_list('is_active', flat=True)
if user[0]==False:
self.fields['customerSponsor'].queryset = Customer.objects.exclude(myUser=user_id)
class CustomerAdmin(admin.ModelAdmin):
form = CustomerChangeForm
add_form = CustomerCreationForm
class Meta:
model = Customer
admin.site.register(Customer, CustomerAdmin) |