Я использую Django 1.11 и python 3.6.5. Я сделал модель и форму для регистрации пользователя. Кажется, все хорошо, но у меня есть эта ошибка, которую я не мог решить.
__init__() takes 1 positional argument but 2 were given
Вот модель:
from django.db import models
class User_account(models.Model):
first_name = models.CharField(max_length=64)
last_name = models.CharField(max_length=64)
user_name = models.CharField(max_length=128)
email = models.EmailField(max_length=254, blank=False, unique=True)
password = models.CharField(max_length=64)
address = models.ForeignKey(Address, on_delete=models.CASCADE)
Вот форма:
from django import forms
from .models import User_account
class User_accountForm(forms.ModelForm):
class Meta:
model = User_account
fields = ['first_name', 'last_name', 'user_name', 'email', 'password', 'address']
Вот часть вида:
from django.shortcuts import render, redirect
from .models import *
from django.views import View
from .forms import *
from django.contrib.auth import authenticate, login
class User_accountFormView(View):
form_class = User_accountForm
template_name = 'towns/salehslist/registeration_form.html'
# display a blank form
def get(self, request, *args, **kwargs):
form = self.form_class(None)
return render(request, self.template_name, {'form':form})
URL-адреса:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^register/$', views.User_accountFormView, name='register'),