Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django为什么在应用迁移时创建一个字段?_Django_Django Models - Fatal编程技术网

Django为什么在应用迁移时创建一个字段?

Django为什么在应用迁移时创建一个字段?,django,django-models,Django,Django Models,有一些模型,为什么在python manage.py makemigrations仅由迁移中的1个字段创建之后,如何修复它?我尝试过执行manage.py migrate——伪零,然后再次执行迁移,但什么都没有。该应用程序已在“设置”中注册。 字段不应以逗号(,)结尾。如果您添加一个尾随逗号,它会将字段包装在一个单元组中,因此Django无法检测该字段: from django.db import models from django.urls import reverse class Ca

有一些模型,为什么在python manage.py makemigrations仅由迁移中的1个字段创建之后,如何修复它?我尝试过执行manage.py migrate——伪零,然后再次执行迁移,但什么都没有。该应用程序已在“设置”中注册。


字段不应以逗号(
)结尾。如果您添加一个尾随逗号,它会将字段包装在一个单元组中,因此Django无法检测该字段:

from django.db import models
from django.urls import reverse

class Category(models.Model):
   image = models.ImageField(default='default.png', upload_to='category_image')
   title = models.CharField(max_length=50, db_index = True)

   def __str__(self):
        return self.title

   def get_absolute_url(self):
        return reverse('category_detail_url', kwargs={'title': self.title})


class Provider(models.Model):
    name = models.CharField(max_length=50, db_index=True)
    phone_number = models.CharField(max_length=12, db_index=True)
    address = models.CharField(max_length=50, db_index=True)

    def __str__(self):
        return self.name


class Product(models.Model):
    title = models.CharField(max_length=50, db_index = True)
    receipt_date = models.DateTimeField(auto_now_add=True, blank=True)
    quantity_stock = models.IntegerField()
    quantity_store = models.IntegerField()
    purchase_price = models.IntegerField()
    image = models.ImageField(default='default.png', upload_to='product_image')
    provider = models.ForeignKey(
        Provider,
        null=True,
        related_name='products',
        on_delete=models.CASCADE
    )
    category =  models.ForeignKey(
        Category,
        null=True,
        related_name='products',
        on_delete=models.CASCADE
    )

    def __str__(self):
        return self.title

    def get_absolute_url(self):
        return reverse('product_detail_url', kwargs={'title': self.title})


class Sale(models.Model):

    product = models.ForeignKey(
        Product,
        related_name='sales',
        on_delete=models.CASCADE
    )
    date_of_sale = models.DateTimeField(auto_now_add=True, blank=True)
    quantity_goods_sold = models.IntegerField()
    retail_price = models.IntegerField()

    def __str__(self):
        return self.id

因为您在字段中添加了尾随逗号,因此将字段包装在一个元组中。请删除末尾的逗号,以便
IntegerField()
而不是
IntegerField(),
from django.db import models
from django.urls import reverse

class Category(models.Model):
   image = models.ImageField(default='default.png', upload_to='category_image')
   title = models.CharField(max_length=50, db_index = True)

   def __str__(self):
        return self.title

   def get_absolute_url(self):
        return reverse('category_detail_url', kwargs={'title': self.title})


class Provider(models.Model):
    name = models.CharField(max_length=50, db_index=True)
    phone_number = models.CharField(max_length=12, db_index=True)
    address = models.CharField(max_length=50, db_index=True)

    def __str__(self):
        return self.name


class Product(models.Model):
    title = models.CharField(max_length=50, db_index = True)
    receipt_date = models.DateTimeField(auto_now_add=True, blank=True)
    quantity_stock = models.IntegerField()
    quantity_store = models.IntegerField()
    purchase_price = models.IntegerField()
    image = models.ImageField(default='default.png', upload_to='product_image')
    provider = models.ForeignKey(
        Provider,
        null=True,
        related_name='products',
        on_delete=models.CASCADE
    )
    category =  models.ForeignKey(
        Category,
        null=True,
        related_name='products',
        on_delete=models.CASCADE
    )

    def __str__(self):
        return self.title

    def get_absolute_url(self):
        return reverse('product_detail_url', kwargs={'title': self.title})


class Sale(models.Model):

    product = models.ForeignKey(
        Product,
        related_name='sales',
        on_delete=models.CASCADE
    )
    date_of_sale = models.DateTimeField(auto_now_add=True, blank=True)
    quantity_goods_sold = models.IntegerField()
    retail_price = models.IntegerField()

    def __str__(self):
        return self.id