首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >卸载django-tinymce。制造时输入错误

卸载django-tinymce。制造时输入错误
EN

Stack Overflow用户
提问于 2019-07-11 02:40:51
回答 1查看 460关注 0票数 0

谢谢你抽出时间阅读这篇文章。

我对TinyMCE在django的扩展并不满意,于是决定改用django-summernote。我先跑了

代码语言:javascript
复制
pip uninstall django-tinymce

删除了在实际项目中提到的所有内容。

遵循安装django-summernote的指示。完成后我决定跑

代码语言:javascript
复制
python manage.py makemigrations
python manage.py migrate

若要应用新扩展,但获得一个错误:

代码语言:javascript
复制
File "/Users/rasulkireev/Sites/dj-pw/now/migrations/0006_auto_20190703_0134.py", line 4, in <module>
    import tinymce.models
ModuleNotFoundError: No module named 'tinymce'

我不知道为什么Django会关心我以前做过的事情,因为我只是要求替换编辑器。我也不能运行python manage.py runserver

在修复这个之前我什么都做不了。我求你们帮帮忙。

注意:理想情况下,我希望保留当前数据库的内容.

谢谢你抽出时间阅读这篇文章。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-11 20:13:06

一旦从模型、管理员和其他文件中删除了对tinymce的所有提及,就需要使用特殊的“标志”进行迁移:

代码语言:javascript
复制
python manage.py makemigrations
python manage.py migrate --fake-initial

我不清楚这个方法的后端,但它是有效的。你可以在正式的Django网站上看到更多关于它的信息:https://docs.djangoproject.com/en/2.2/topics/migrations/

这将为您的应用程序进行新的初始迁移。现在,运行python manage.py迁移--假的--初始化,Django将检测到您有一个初始迁移,并且它想要创建的表已经存在,并将迁移标记为已经应用。(如果没有迁移--假初始标志,命令就会出错,因为它想要创建的表已经存在。) 请注意,这只给出了两件事情:

  1. 你没有改变你的模型,因为你做了他们的桌子。要使迁移工作,必须先进行初始迁移,然后进行更改,因为Django将更改与迁移文件进行比较,而不是数据库。
  2. 您没有手动编辑您的数据库- Django将无法检测到您的数据库与您的模型不匹配,当迁移试图修改这些表时,您只会得到错误。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56980941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档