Django 模型字段未在数据库中生成
我正在创建一个基本的Django项目,使用的是默认的数据库sqlite3。我在主文件夹里创建了一个名为product的应用。所以,我的文件夹结构是这样的:
-project
-djangoproject
-products
-models.py
-manage.py
我在models.py文件中添加了新的产品模型,但当我运行命令python3 manage.py makemigrations时,我查看我的迁移文件,发现模型是创建了,里面也有一个id字段,但我的产品的其他字段没有出现在迁移文件中。我还运行了命令python3 manage.py migrate并检查了我的数据库,发现产品表里只有id字段。我不太明白这个问题的原因。
这是我的迁移文件和models.py文件的内容:
from django.db import models
class Product(models.Model):
name: models.CharField(max_length=200)
price: models.FloatField()
stock: models.IntegerField()
image_url: models.CharField(max_length=2083)
# Generated by Django 5.0.3 on 2024-03-21 04:46
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
('products', '0004_delete_offer_delete_product'),
]
operations = [
migrations.CreateModel(
name='Product',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
],
),
]
Django版本:5
如果有人知道原因,请留言或发个答案。对我来说会非常有帮助。
提前谢谢大家。
1 个回答
0
删除所有的迁移文件,然后按照下面的步骤操作。
请按照给出的步骤进行。
第一步:
python manage.py makemigrations appname
第二步:
python manage.py migrate appname
我希望按照这些步骤能解决你的问题。