2012-05-14 18 views
8

Ich möchte eine Badge-App in einem Django-Projekt implementieren, um die gleiche Funktionalität wie Stackoverflow zu bieten, um Badges zu vergeben.Django: Beste Badge-App für Django-Projekt

Ich habe verschiedene apps (list of apps) angeschaut, und verschiedene Blogs haben Brabeion erwähnt. Ist das die beste Django App für Badges?

The project scheint für einige Zeit nicht gepflegt zu werden und Fragen zu Github blieben unbeantwortet. Die Dokumentation ist unkompliziert, jedoch werden Einzelheiten nicht erläutert, z. Was ist die Methode award_points in dem Beispiel unten.

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 

Auf der anderen Seite listet djangopackages.com Django-achievements. Die Dokumentation scheint gut und detailliert zu sein, jedoch benötigt jede Errungenschaft ihre own class (könnte eine lange Klassendefinitionsdatei sein).

Was verwenden Sie für Ihre Projekte? Wenn Sie eines der beschriebenen Pakete verwenden, besteht die Möglichkeit, dass Sie etwas Code um die Punkte-Registrierung herum teilen können?

Antwort

5

Ich habe keine Antwort, aber ich recherchiere die gleiche Frage. Ich bin immer wieder auf brabeion und django-badges gestoßen, von den beiden Django-Abzeichen scheint mir das Beste zu sein.

Keine der Optionen scheint jedoch extrem produktionsbewährt zu sein, ich würde auch gerne wissen, ob irgendjemand davon verwendet hat und was ihre Erfahrungen/Vorschläge sind.

Die Bonuspunkte können so einfach sein wie:

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

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

nur für die Zukunft, gingen wir mit brabeion. Ich mag die Erweiterbarkeit, Sellerie-Unterstützung und das System der Verwendung definierter Ereignisgruppen, um nach Belohnungen zu suchen, gegenüber einem manuellen oder single-signalbasierten Ansatz. – Murph

+0

Ich benutze Brabeion auch, aber ich denke, es funktioniert nicht gut mit Django-1.4 – danielrvt

+0

Ich bin auf 1.3 und musste anpassen, um es zur Arbeit zu bekommen. Das Grundkonzept ist jedoch gut, ich bin mir sicher, dass Sie es mit 1.4 arbeiten und eine Pull-Anfrage machen könnten (obwohl sie meine noch nicht akzeptiert haben). Versuchen Sie es mit dem skeet70-Zweig von brabeion, um zu sehen, ob es für Sie funktioniert (es ist die einzige offene Pull-Anfrage). – Murph

Verwandte Themen