장고 회원가입 관련 질문!

조회수 3064회

회원가입을 해도 어드민 페이지에서 확인할 수 없는걸 보니 데이터베이스에 저장이 안되는데 어디서 잘못된것인지 모르겠습니다.

register.html 코드 입니다.

<html>

    <head>
    <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
    <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
        <link href="https://fonts.googleapis.com/css?family=Dosis&subset=latin,latin-ext" rel="stylesheet" type="text/css">
            <title>Regitser With PAM</title>
    </head>

    <body>
        <h1>Register With PAM</h1>
        {% if registered %}
            <strong>Thank you for registering!</strong>
            <a href = "/mysite">Return to MainPage.</a><br />
        {% else %}
        <strong>Register here!</strong><br />

        <form id = "user_form" method = "post" action = "/mysite/register/" enctype = "multipar/form-date">

        {% csrf_token %}
            {{ user_form.as_p }}
            {{ profile_form.as_p}}

           <input type = "submit" name "submit" value = "Register" />
       </form>
       {% endif %}
    </body>
</html>

models.py

class UserProfile(models.Model):
    user = models.OneToOneField(User)
    schoolid = models.PositiveIntegerField(primary_key=True, validators=[MaxValueValidator(5)])
    phone_number = models.PositiveIntegerField(primary_key=True, validators=[MaxValueValidator(11)])    

    def __str__(self):
        return self.user,username

views.py

def register(request):
    context = RequestContext(request)

    registered = False

    if request.method == 'POST':
        user_form = UserForm(data=request.POST)
        profile_form = UserProfile(data=request.POST)

        if user_form.is_valid() and profile_form.is_valid():
            user = user_form.save()
            user.set_password(user.password)
            user.save()

            profile = profile_form.save(commit=False)
            profile.user = user

            profile.save()
            registered = True

        else:
            print(user_form.errors, profile_form.errors)

    else:
        user_form = UserForm()
        profile_form = UserProfileForm()

    return render_to_response(
            'mysite/register.html',
            {'user_form':user_form, 'profile_form':profile_form, 'registered': registered}, context)

실행화면 이미지

그런데 register 를 눌러 register 해도 어드민 페이지를 가보면....

거기다 register 하면 404에러 떠요 ㅠㅠ 이미지

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 보면 지금 가입페이지는 주소가 /register인데 html에는 action이

    /mysite/register/ 네요

    그냥 "/register" 혹은 "" 이렇게 바꿔서 해보세요

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)