Ошибка при работе с формой Django UserProfile. - PullRequest
0 голосов
/ 10 ноября 2011

Это мой взгляд на регистрацию пользователя:

def user_reg(request):
    UserReg = modelformset_factory(UserProfile)

    if request.method == 'POST':
        formset = UserReg(request.POST)
        if formset.is_valid():
            formset.save()
            return HttpResponseRedirect('/thanks/')
    else:
        formset = UserReg()
    return render_to_response("regform.html",{"formset":formset,})

Это мой models.py

from django.db import models
from django.contrib.auth.models import User


class UserProfile(models.Model):
    user = models.ForeignKey(User, unique=True)
    name = models.CharField(max_length = 100)
    reg_no = models.TextField(unique=True)
    password = models.CharField(max_length=128)

Я получаю ошибку:

Exception Type: DatabaseError at /register/
Exception Value: column auth_userprofile.name does not exist
LINE 1: ..._userprofile"."id", "auth_userprofile"."user_id", "auth_user...

У меня есть два вопроса: 1. Очевидно, я хочу знать, почему я получаю ошибку и как отлаживать.2. Правильный ли это путь или нужно определить его в forms.py и затем импортировать?Модель Formset я имел в виду.Документация по Django показала, что таким способом это можно сделать.

1 Ответ

0 голосов
/ 10 ноября 2011

Ошибка - ошибка базы данных, вам нужно добавить столбец «имя» в таблицу «auth_userprofile». Я настоятельно рекомендую изучить "Юг" для всех ваших потребностей в миграции схемы базы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...