我最近创建了一个名为“搜索”的新类来存储用户的搜索历史记录。为了在数据库上反映这一点,我运行了python manage.py makemigrations
,到目前为止,它在migrations目录中创建了文件0001_initial.py
。但是,当我运行python manage.py showmigratiions
时,它表明新类已被迁移。
searches
[X] 0001_initial
如果我运行python manage.py migrate
,它会认为不需要进一步的迁移就不足为奇了。
Operations to perform:
Apply all migrations: searches
Running migrations:
No migrations to apply.
在整个过程中,0001_initial.py
永远不会显示在表django_migrations
中。
奇怪的是,如果我稍稍更改了类,则可以先运行makemigrations
,然后运行migrate
,然后编辑的迁移将显示在数据库的django_migrations
表中。可悲的是,它仍然不会为“搜索”创建表。
这是我的模特。py
from django.db import models
from bookapp.users.models import User
from bookapp.models import TimestampedModel
class Search(TimestampedModel):
user = models.ForeignKey('users.User', related_name='searched_by_user', blank=True, null=True, on_delete=models.SET_NULL)
datetime = models.DateTimeField(auto_now_add=True)
search_input = models.CharField(max_length=1024, null=True, blank=True)
def __str__(self):
return self.search_input
并且我已经将Search包含在settings.py中的INSTALLED_APP中