我如何告诉django-extensions的shell_plus我想要自动加载哪些模型?
发布于 2011-02-06 01:17:52
在过去,每当shell_plus没有自动加载我的模型时,通常都是因为模型中存在错误,导致自动加载失败。
如果您打开shell plus,然后尝试一次手动加载一个模块,会发生什么情况?
from app.models import ModelName另一件要尝试的事情是关闭所有的应用程序,除了设置文件中的默认django应用程序,并查看它们是否自动加载正常。如果他们这样做了,那么慢慢地添加越来越多的应用程序,一次一个,直到它停止工作,然后你就可以找出哪个模型有问题。一旦您知道哪个型号有问题,就可以更容易地找出问题所在。
我遇到的最常见的错误是两个不同模型之间的循环依赖(这个模型依赖于那个模型,但它还没有加载,反之亦然)。
希望这能有所帮助。
发布于 2011-02-05 06:19:03
shell_plus - Django shell的增强版本。它会自动加载你所有的模型,让你可以很容易的使用ORM。
引用自django-extensions github wiki,位于https://github.com/django-extensions/django-extensions/wiki/Current-Command-Extensions
不要相信它实际上是可变的,它的设计是为了快速自动加载所有型号。
发布于 2011-04-16 17:40:14
我已经为shell_plus扩展做了一个新的补丁,它可以忽略一些模型。正在等待https://github.com/django-extensions/django-extensions/pull/99被接受。
https://stackoverflow.com/questions/4903007
复制相似问题