Неизвестные поля (поля) (), указанные для

#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')