2012-05-14 18 views
8

vorrei implementare un'applicazione distintivo in un progetto Django per fornire la stessa funzionalità come StackOverflow di distintivi di aggiudicazione degli utenti.Django: Migliore applicazione del distintivo per il progetto Django

Ho guardato varie applicazioni (list of apps), e vari blog ho citato Brabeion. È la migliore app Django per Badge?

The project sembra non essere mantenuto per un certo tempo e le domande su GitHub rimaste senza risposta. La documentazione è semplice, tuttavia i dettagli non sono spiegati, ad es. qual è il metodo award_points nell'esempio seguente.

def my_view(request): 
    if request.method == "POST": 
     # do some things 
     request.user.profile.award_points(15) 
     badges.possibly_award_badge("points_awarded", user=request.user) 
    # more view 

D'altra parte, djangopackages.com elenca Django-achievements. La documentazione sembra buona e dettagliata, tuttavia, ogni risultato ha bisogno del suo own class (potrebbe un file di definizione di una lunga classe).

Cosa stai usando per i vostri progetti? Se usi uno dei pacchetti descritti, c'è la possibilità che tu possa condividere del codice attorno alla registrazione del punto?

risposta

5

Non ho una risposta, ma sto ricercando la stessa domanda. Ho più volte incontrato brabeion e django-badges, dei due distintivi di django sembra il migliore per me.

Nessuna delle opzioni sembrano estremamente produzione provata, però, mi piacerebbe anche sapere se qualcuno ha usato uno di questi, e quali/suggerimenti sono le loro esperienze.

I punti premio potrebbe essere semplice come:

request.user.get_profile().award_points(15) 

def award_points(points): 
    self.points += points 
+3

Solo per riferimento futuro, siamo andati con brabeion. Mi piace l'estensibilità, il supporto per il sedano e il sistema di utilizzare gruppi di eventi definiti per verificare i premi, rispetto a un approccio basato sul segnale manuale o singolo. – Murph

+0

Uso anche brabeion, ma penso che non funzioni bene con django-1.4 – danielrvt

+0

Sono su 1.3 e ho dovuto personalizzarlo per farlo funzionare. Il concetto di base è buono, sono sicuro che potresti far funzionare il 1.4 e fare una richiesta di pull (anche se non hanno ancora accettato il mio). Prova a usare il ramo di brawn di skeet70 per vedere se funziona per te (è l'unica richiesta di pull aperta). – Murph

Problemi correlati