Django ipython shell中%autoreload的正确配置是什么?

vau*_*och 7 django shell reload ipython

Ipython有一个名为autoreload的插件,可能会在每个命令后重新加载所有模块,因此您可以更改源代码而不必退出shell并重新输入所有命令.例如,请参阅http://dsnra.jpl.nasa.gov/software/Python/tips-ipython.html.

然而,当它与Django一起使用时,这看起来最好是片状的,例如python manage.py shell给我一个带有Django上下文的IPython shell,但是自动重载似乎根本不可靠.

这是我添加到ipy_user_conf.py文件中的内容:

def main():
    ... # rest of the fn here
    import ipy_autoreload
    ip.magic('%autoreload 2')

自动上载在有限的情况下工作,可能有10-20%的时间.有没有人成功配置这个与Django一起工作?

sch*_*hot 3

这个答案可能也适用于您的情况。Django 保留所有模型的自己的缓存,因此如果您想重新加载所有内容,则必须手动清理此缓存。