Error de Django (atributo): el objeto ‘CharField’ no tiene atributo ‘is_related’

Estoy tratando de hacer una descripción para cada usuario, en mi nuevo proyecto. Pero me sale un error cuando trato de hacer migraciones. No sé cómo arreglarlo. He intentado cosas diferentes pero nada funcionó, mi encoding es quizás muy mala, pero también soy nuevo en Python y Django.

El error:

C:\Users\bruger\Dropbox\min-login-web\web_login>python manage.py makemigrations Traceback (most recent call last): File "manage.py", line 15, in  execute_from_command_line(sys.argv) File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\core\management\__init__.py", line 381, in execute_from_command_line utility.execute() File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\core\management\__init__.py", line 375, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\core\management\base.py", line 316, in run_from_argv self.execute(*args, **cmd_options) File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\core\management\base.py", line 353, in execute output = self.handle(*args, **options) File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\core\management\base.py", line 83, in wrapped res = handle_func(*args, **kwargs) File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\core\management\commands\makemigrations.py", line 143, in handle loader.project_state(), File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\db\migrations\loader.py", line 322, in project_state return self.graph.make_state(nodes=nodes, at_end=at_end, real_apps=list(self.unmigrated_apps)) File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\db\migrations\graph.py", line 378, in make_state project_state = self.nodes[node].mutate_state(project_state, preserve=False) File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\db\migrations\migration.py", line 87, in mutate_state operation.state_forwards(self.app_label, new_state) File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\db\migrations\operations\models.py", line 85, in state_forwards list(self.managers), File "C:\Users\bruger\AppData\Local\Programs\Python\Python37\lib\site-packages\django\db\migrations\state.py", line 377, in __init__ if field.is_relation and hasattr(field.related_model, '_meta'): AttributeError: 'CharField' object has no attribute 'is_relation' 

Archivo de mis modelos:

 from django import forms from django.db import models from django.db.models.signals import post_save from django.contrib.auth.models import User from PIL import Image class Profile(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE) image = models.ImageField(default='default.jpg', upload_to='profile_pics') def __str__(self): return f'{self.user.username} Profile' def save(self): super().save() img = Image.open(self.image.path) if img.height > 300 or img.width > 300: output_size = (300, 300) img.thumbnail(output_size) img.save(self.image.path) class Desc(models.Model): description = forms.CharField(widget = forms.Textarea, max_length = 250, required=False) def __str__(self): return f'{self.user.username} Desc' 

Espero que alguien pueda ayudarme, porque esto realmente me está poniendo nervioso.

Se mezclaron formas y modelos . Un modelo no especifica un formulario (HTML), especifica cómo la base de datos debe almacenar los datos, por lo que debe usar un models.CharField . models.CharField :

 class Desc(models.Model): description = models. CharField(max_length=250) 

Dicho CharField no tiene un widget asignado, esto es algo que debe manejar en el nivel de formulario .

Probablemente necesitará realizar migraciones, ya que hasta este punto, no había ningún campo de description en su modelo de Desc .

Estoy de acuerdo en cierta medida en que es confuso que los formularios tengan frecuentemente un campo con el mismo nombre (bueno, esos son típicamente los campos de formulario predeterminados para el campo modelo con el mismo nombre). Sin embargo, la idea es que los campos modelo especifiquen las columnas en una base de datos, mientras que los campos de formulario especifican cuadros de texto, casillas de verificación, etc. en un formulario (HTML).