من مدل را طبق استاد برنامه نوشتم الان python manage.py میخواهم اجرا کنم خطا میدهد و با کامنت کردن مدل مون python manage.pyاجرا میشه
attribute_type = models.PositiveSmallIntegerField(default=INTEGER,choices=ATTRIBUTE_TYPES_FIELDS)
این را خطا میده
class Product(models.Model):
product_Type = models.ForeignKey(ProductType, on_delete=models.PROTECT, related_name='products_types')
upc = models.BigIntegerField(unique=True)
title = models.CharField(max_length=32)
description = models.TextField(blank=True)
Category = models.ForeignKey(Category, on_delete=models.PROTECT, related_name='products_cat')
brand = models.ForeignKey(Category, on_delete=models.PROTECT, related_name='products_brand')
def __str__(self):
return self.title
def __str__(self):
return self.title
class ProductAttributeValue(models.Model):
product = models.ForeignKey(Product, on_delete=models.CASCADE, related_name='attribute_values')
value = models.CharField(max_length=48)
attribute = models.ForeignKey(ProductAttribute, on_delete=models.PROTECT, related_name='values')
def __str__(self):
return f"{self.product}({self.attribute}):{self.value}"
این دو کلاس ام مشکل داره چون اینها را کامنت میکنم اجرا میشه
python manage.py
خطا در ترمینال چاپ میکنه
Traceback (most recent call last):
File "/home/mahdiyousfi/Academy/venv/lib/python3.10/site-packages/django/db/models/fields/related.py", line 798, in __init__
to._meta.model_name
AttributeError: 'ForeignKey' object has no attribute '_meta'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/mahdiyousfi/Academy/academy/manage.py", line 22, in
main()
File "/home/mahdiyousfi/Academy/academy/manage.py", line 18, in main
execute_from_command_line(sys.argv)
File "/home/mahdiyousfi/Academy/venv/lib/python3.10/site-packages/django/core/management/__init__.py", line 419, in execute_from_command_line
utility.execute()
File "/home/mahdiyousfi/Academy/venv/lib/python3.10/site-packages/django/core/management/__init__.py", line 395, in execute
django.setup()
File "/home/mahdiyousfi/Academy/venv/lib/python3.10/site-packages/django/__init__.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "/home/mahdiyousfi/Academy/venv/lib/python3.10/site-packages/django/apps/registry.py", line 114, in populate
app_config.import_models()
File "/home/mahdiyousfi/Academy/venv/lib/python3.10/site-packages/django/apps/config.py", line 301, in import_models
self.models_module = import_module(models_module_name)
File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1050, in _gcd_import
File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "", line 883, in exec_module
File "", line 241, in _call_with_frames_removed
File "/home/mahdiyousfi/Academy/academy/catalogue/models.py", line 49, in
class Product(models.Model):
File "/home/mahdiyousfi/Academy/academy/catalogue/models.py", line 56, in Product
brand = models.ForeignKey(Category, on_delete=models.PROTECT, related_name='products_brand')
File "/home/mahdiyousfi/Academy/venv/lib/python3.10/site-packages/django/db/models/fields/related.py", line 800, in __init__
assert isinstance(to, str), (
AssertionError: ForeignKey() is invalid. First parameter to ForeignKey must be either a model, a model name, or the string 'self'