Django
Révision datée du 10 mars 2010 à 17:04 par imported>SylvainBeucler (→Personnaliser l'interface d'admin)
Personnaliser l'interface d'admin
De quoi aller plus loin, principalement les quelques derniers slides (ce sont des choses que j'avais cherché pendant trois plombes):
- Customizing the Django Admin at EuroDjangoCon 2009
- Customizing_the_Django_Admin-EuroDjangoCon09.pdf
- CookBookNewformsAdminAndUser
- Doing more with the Django admin
Modifier le queryset dynamiquement:
class StuffAdmin(admin.ModelAdmin)
...
def queryset(self, request):
qs = super(self.__class__, self).queryset(request)
qs = qs.filter(user=request.user)
return qs
# or
def queryset(self, request):
qs = self.model._default_manager.filter(user=request.user)
return qs
Forcer des champs dynamiquement:
class StuffAdmin(admin.ModelAdmin)
...
def save_model(self, request, object, form, change):
object.user = request.user
object.save()