会員登録画面を作成しています。
汎用ビューを使っています。カスタムユーザーを採用していますが、データの送信ができず、登録できません。
カスタムユーザーが原因だと思いますが、データ送信に足りないところがあれば教えていただきたいです。
送信ボタンを押しても登録されない状況です。
カスタムユーザーのappフォルダと会員登録のappフォルダは分けています。
以下がカスタムユーザーのmodels.pyです。
python
1#myuser/models.py 2from django.db import models 3from django.contrib.auth.models import AbstractUser 4 5# Create your models here. 6class CustomUser(AbstractUser): 7 icon = models.ImageField(upload_to = 'icons',null=True) 8 status = models.BooleanField(default=False) 9 10 def __str__(self): 11 return self.username
以下がforms.pyです。
python
1# register/forms.py 2from django import forms 3from django.contrib.auth.forms import UserCreationForm 4from myuser.models import CustomUser 5 6class CustomUserCreationForm(UserCreationForm): 7 8 class Meta: 9 model = CustomUser 10 fields = ('username', 'email','password')
会員登録画面のviews.pyです。
python
1#register/views.py 2from django.shortcuts import render 3from django.urls import reverse_lazy 4from django.views.generic import CreateView,TemplateView 5from .forms import CustomUserCreationForm 6 7class RegisterView(CreateView): 8 # print(POST) 9 template_name = 'register/register.html' 10 form_class = CustomUserCreationForm 11 success_url = reverse_lazy('login')
以下が会員登録画面のテンプレートファイルです。
htm
1{% load static %} 2 3{% block customcss %} 4<link rel="stylesheet" href="{% static 'register/register.css' %}"> 5{% endblock customcss %} 6 7<!DOCTYPE html> 8<html lang="ja"> 9 10<head> 11 <meta charset="UTF-8"> 12 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 13 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" 14 integrity="sha384-wvfXpqpZZVQGK6TAh5PVlGOfQNHSoD2xbE+QkPxCAFlNEevoEH3Sl0sibVcOQVnN" crossorigin="anonymous"> 15 <title>ログイン画面</title> 16</head> 17 18<body> 19 <div class="wrap"> 20 <div class="logo"> 21 <img src="{% static 'img/logo.png' %}"> 22 </div> 23 <div class="social-media"> 24 <button><a href="#"><i class="fa fa-google "></i> Google</a></button> 25 </div> 26 <form method="POST" action="">{% csrf_token %} 27 <label>Username:</label><br> 28 {{form.username}} 29 <label>E-Mail:</label><br> 30 {{form.email}} 31 <label>Password:</label><br> 32 {{form.password}} 33 <input type="submit" value="Sign Up"> 34 </form> 35 <p>Already a Member?<a href="{% url 'login' %}">Log In Now</a></p> 36 </div> 37</body> 38 39</html>
目的は会員が登録できるようになることです。
よろしくお願いします。
あなたの回答
tips
プレビュー