我想以交互方式使用Flask应用程序的views模块中的函数。
我将模块导入IPython,然后做一些小改动 - 例如删除一些print语句,然后尝试重新加载模块。
模块不会重新加载;相反,它返回一个AssertionError。
In[1]: import app.views as av
In[2]: test_result = av.test() # Do something
In[3]: %edit app/views.py # Make some minor change
In[4]: reload(av)
AssertionError: View function mapping is overwriting an existing endpoint function: user
我正在试图弄清楚是什么引发了这个错误。
我认为这是因为视图名称必须是唯一的。从第一次导入开始,视图模块中的所有url端点都在命名空间中定义。当我尝试重新加载它时,引发了AssertionError,因为现在url端点不是唯一的。
Flask无法覆盖旧端点,即使它只是用自己覆盖它们。
我可以做些什么来绕过这个来编辑视图模块中的函数吗?