class MyModelAdmin(admin.ModelAdmin):
readonly_fields = ('code', 'nom', 'prenom', 'sexe', 'datenaiss', 'lieunaiss', 'annee_bepc', 'centre_bepc', 'numtable',
'datecreation', 'datecreation', 'datemodification', 'image_tag',)
#list_editable = ('env1', 'env2')
list_display = ('image_tag', 'code', 'nom', 'prenom', 'sexe', 'datenaiss', 'lieunaiss', 'annee_bepc', 'centre_bepc',
'datecreation', 'env1', 'env2', 'valide_poste', 'param_secret' )
search_fields = ('nom', 'prenom', 'code', 'numtable', 'datenaiss', 'lieunaiss', 'numpi', 'numtel', 'env1', 'env2',)
list_filter = (
('annee_bepc', DropdownFilter),
('sexe', DropdownFilter),
('valide_poste'),
('valide_agence_id__agence', DropdownFilter),
)
#filter_horizontal = ['annee_bepc', 'sexe']
ordering = ('-code', 'datecreation', 'nom', 'prenom', 'datenaiss', 'lieunaiss', 'nompere', 'nommere', 'sexe',)
actions = ['auth_valide_poste', 'auth_imp_recu_poste', ]
actions_on_bottom = True
class Media:
js = [
'/admin/menu_filter_collapse.js',
]
def get_readonly_fields(self, request, obj=None):
# Group Poste
if request.user.groups.filter(name='poste').exists():
readonly_fields = ('code', 'nom', 'prenom', 'sexe', 'datenaiss', 'lieunaiss', 'annee_bepc', 'centre_bepc',
'numtable', 'numtel', 'email', 'numpi',
'datecreation', 'datecreation', 'datemodification', 'image_tag', 'photo_cand', 'nompere', 'nommere', 'valide_poste')
return readonly_fields
# Group Superuser
if request.user.is_superuser is True:
readonly_fields = ('code', 'datecreation', 'image_tag', )
return readonly_fields
return super().get_fieldsets(request, obj=obj)
def auth_imp_recu_poste(self, request, queryset):
if not request.user.has_perm('concours.auth_valide_poste'):
messages.error(request, 'Vous n\'êtes autorisé(e) à effectuer cette action')
else:
#k = 'be186847-9aaf-45db-a1bb-ae966979bf52'
r = MyModel.objects.get(code__exact=code).param_secret
k = r
return HttpResponseRedirect(reverse('generatePdfAuth', args=[k]))
auth_imp_recu_poste.short_description = "Imprimer les reçu de paiement Poste-CI"
Here is my code (admin.py). I would like inside the ‘auth_imp_recu_poste’ administration action to have access to the ‘param_secret’ field to send it as a parameter to one of my views.