7 and python 2.7. i want to add extra field in django registration. i try to extend with my model like this:
class Seller(models.Model):
user = mo
It's works for me:
models.py
from django.db import models
from django.contrib.auth.models import User
class UserProfile(models.Model):
field = models.CharField(max_length=3)
user = models.OneToOneField(User)
forms.py
from registration.forms import RegistrationFormUniqueEmail
from django import forms
class UserProfileRegistrationForm(RegistrationFormUniqueEmail):
field = forms.CharField()
Create regbackend.py and write:
from registration.backends.default.views import RegistrationView
from forms import UserProfileRegistrationForm
from models import UserProfile
class MyRegistrationView(RegistrationView):
form_class = UserProfileRegistrationForm
def register(self, request, form_class):
new_user = super(MyRegistrationView, self).register(request, form_class)
user_profile = UserProfile()
user_profile.user = new_user
user_profile.field = form_class.cleaned_data['field']
user_profile.save()
return user_profile
And urls.py
from django.conf.urls import include, url
import regbackend
urlpatterns = [
url(r'^accounts/register/$', regbackend.MyRegistrationView.as_view(), name='registration_register'),
]