2009-12-09 18 views
14

Vorrei poter fornire ad alcuni utenti esistenti un'autorizzazione personalizzata che richiedo per accedere a una vista.Aggiungere un'autorizzazione personalizzata a un utente

Penso di aver bisogno di aggiungere la nuova autorizzazione alla tabella Postgres auth_permission, ma ho il sospetto che ci sia un modo più alto per farlo. Inoltre c'è una colonna in auth_permission per content_type e non so quale dovrebbe essere il suo valore.

Qual è il modo giusto per farlo?

risposta

22

Dai un'occhiata a come create custom permissions nei documenti.

class USCitizen(models.Model): 
    # ... 
    class Meta: 
     permissions = (
      ("can_drive", "Can drive"), 
      ("can_vote", "Can vote in elections"), 
      ("can_drink", "Can drink alcohol"), 
     ) 

Quindi eseguire manage.py syncdb.

Utilizzare permission_required decorator per limitare l'accesso alla vista.

+0

Grazie. Ha funzionato. Ciò che inizialmente mi ha confuso è che crea un nuovo modello solo per il permesso. Ma immagino che abbia senso. – Mitch

Problemi correlati