Недавно я создал новый класс под названием «Поиск» для хранения истории поиска пользователей.Чтобы отразить это в базе данных, я запустил python manage.py makemigrations
, который создает файл 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
в базе данных.К сожалению, он все равно не создаст таблицу для поиска.
Вот мой model.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
, и я включил Поиск в INSTALLED_APP в settings.py