#django #python-3.x
#django #python-3.x
Вопрос:
Что здесь не так?
ошибка: файл «/Users/user/Desktop/Dp1/project6/project6/urls.py «, строка 18, из файла представлений импорта myapp6 «/Users/user/Desktop/Dp1/project6/myapp6/views.py «, строка 2, из myapp6.forms импортируйте пользовательскую форму, файл UserProfileInfoForm «/Users/user/Desktop/Dp1/project6/myapp6/forms.py «, строка 15, в классе UserProfileInfoForm(forms.ModelForm): Файл «/Users/user/miniconda3/envs/Djangoenv/lib/python3.7/site-packages/django/forms/models.py «, строка 266, в новом поле raise ошибка (сообщение) django.core.exceptions.Ошибка поля: неизвестные поля (поля) (profile_pic), указанные для UserProfileInfo
models.py
from django.db import models
from django.contrib.auth.models import User
# Create your models here.
class UserProfileInfo(models.Model):
user = models.OneToOneField(User,on_delete='models.PROTECT')
portfolio_site = models.URLField(blank=True)
portfolio_pic = models.ImageField(upload_to='profile_pics',blank=True)
def __str__(self):
return self.user.username
forms.py
from django import forms
from django.contrib.auth.models import User
from myapp6.models import UserProfileInfo
class UserForm(forms.ModelForm):
password = forms.CharField(widget=forms.PasswordInput())
class Meta():
model = User
fields = ('username','email','password',)
class UserProfileInfoForm(forms.ModelForm):
class Meta():
model = UserProfileInfo
fields = ('portfolio_site','profile_pic')
Комментарии:
1. Я думаю, вы пропустили имя своего поля, имя поля
portfolio_pic
неprofile_pic
Ответ №1:
У вас есть поле portfolio_pic в вашей модели UserProfileInfo, но в UserProfileInfoForm у вас есть поле формы profile_pic, которое должно быть portfolio_pic.
Ответ №2:
Измените это:
class UserProfileInfoForm(forms.ModelForm):
class Meta():
model = UserProfileInfo
fields = ('portfolio_site','portfolio_pic')
Для этого:
class UserProfileInfoForm(forms.ModelForm):
class Meta():
model = UserProfileInfo
fields = ('portfolio_site','profile_pic')