Я пытаюсь создать реферальную систему в своем проекте Django.Я нашел очень интересное приложение ( pinax-Referrals ) для этой задачи и хочу проверить его.
Из документации не ясно, как правильно его использовать, и нет примера.Как я понимаю, нам нужно сделать следующие шаги:
1) Создать Profile
модели с таким кодом:
from django.contrib.auth.models import User
from django.dispatch import receiver
from account.signals import user_signed_up # django-user-account app
from pinax.referrals.models import Referral
class Profile(models.Model):
user = models.OneToOneField(User,on_delete=models.CASCADE)
referral = models.OneToOneField(Referral, null=True, on_delete=models.CASCADE)
@receiver(user_signed_up)
def handle_user_signed_up(sender, user, form, **kwargs):
Referral.create(redirect_to=user.profile.get_absolute_url())
2) Создать пользовательский вид регистрации:
from account.views import SignupView
from pinax.referrals.models import Referral
class RegistrationView(SignupView):
def after_signup(self, form):
super(RegistrationView, self).after_signup(form)
Referral.record_response(self.request, "USER_SIGNUP")
Насколько правильны мои шаги?Не могли бы вы привести простой пример?