我已经安装了django-mptt和django-mptt-admin。
当尝试通过管理员添加项目时,我得到:
/ admin / item / item / add /的OperationalError
例外价值:
没有这样的列:item_item.lft
我相信这与表格没有关系。
但我在settings.py
中的installed_apps中添加了mptt和mptt-adminINSTALLED_APPS = [
'mptt',
'django_mptt_admin',
我也在终端中运行迁移。
python manage.py makemigrations <app_name>
python manage.py migrate
我也试过
python manage.py migrate --run-syncdb
得到这个
Operations to perform:
Synchronize unmigrated apps: django_mptt_admin, messages, mptt, staticfiles
Apply all migrations: admin, auth, contenttypes, item, sessions
Synchronizing apps without migrations:
Creating tables...
Running deferred SQL...
Running migrations:
No migrations to apply.
现在我没有解决这个问题的想法
根据要求,我的模型使用MPTT
from django.db import models
from mptt.models import MPTTModel, TreeForeignKey
from django.contrib.auth import get_user_model
User = get_user_model()
class Item(MPTTModel):
item_title = models.CharField(max_length=250)
item_parent = TreeForeignKey('self', null=True, blank=True, related_name='children', db_index=True)
dateAdded = models.DateTimeField(auto_now_add=True)
userAdded = models.ForeignKey(User)
class MPTTMeta:
order_insertion_by = ['item_title']
parent_attr = 'item_parent'
def __str__(self):
return self.item_title