Chcę utworzyć niestandardowy widok w administratorze django, który odzwierciedla formularz zmiany z innego modelu. Do tej pory tworzyłem niestandardową klasę adminów i nie wiem, dokąd się udać. Nie mogę znaleźć żadnych dobrych przykładów dla Django 1.8 na temat tworzenia niestandardowego widoku administratora.Niestandardowy widok administratora i ograniczenie użytkownika
Django Wersja: 1,8
class CustomerProductOrderAdmin(admin.ModelAdmin):
review_template = 'admin/onlineordering/order_template.html'
def get_urls(self):
urls = super(CustomerProductOrderAdmin, self).get_urls()
my_urls = patterns('',
(r'\d+/customer_template/$', self.admin_site.admin_view(self.customer_template)),
)
return my_urls + urls
def customer_template(self, request, id):
product_orders = CustomerProductOrder.objects.get(pk=id)
return render_to_response(self.review_template, {
'quantity': 'Quantity: %s' % product_orders.quantity,
}, context_instance=RequestContext(request))
Mam tabeli klientów, które należą do tej tabeli użytkownika.
class Customer(models.Model):
customer = models.ForeignKey(settings.AUTH_USER_MODEL, limit_choices_to={'groups__name': "customers"})
/app/model/1 #pk = customer.id
Postać będzie miała zwyczaj ten adres
/app/CustomForm/
Gdy zalogowany użytkownik przechodzi do/app/customform, nie powinien widzieć formularza zmiany z/app/model/1. Nie powinni widzieć innych użytkowników, którzy zmieniają formularze. Chciałbym również ograniczyć dostęp do niestandardowego formularza do konkretnej grupy użytkowników. tzn. ta grupa nie może zobaczyć/app/model /, ale może zobaczyć/app/customform.