我尝试在Web2Py的一个模型中添加一个新表。另外,我在现有表中添加了一个新字段。我尝试加载一个使用这些表的页面但它没有用,声称那些东西不存在。好的,所以我在这里迁移到False。
db = DAL('sqlite://storage.sqlite',pool_size=1,check_reserved=['all'], migrate = False)
重新加载页面,没有变化。然后我尝试在不理解的表格中做这样的事情
db.define_table(....,migrate=False,fake_migrate=True)
我将DAL调用更改为
db = DAL(...,fake_migrate_all=True)
正如web2py手册所说。仍然没有变化。所以我说好了,我将不得不愚弄整个数据库。所以我从数据库文件夹中取出所有内容,然后尝试用干净的平板重新加载它。
现在它根本就没有加载。
根据数据库管理,如果我再次检查数据库文件夹中的所有表都存在,则不存在任何表。如果我尝试加载应用程序,它会立即报告我的所有被调用表都不存在。我在repo上备份了所有代码但是我无法卸载当前的应用程序,因为我在运行的服务器上没有那种读取权限。
我能做些什么吗?
编辑:顺便说一下,这是在SQLite上发生的
答案 0 :(得分:0)
除了dumbs DB之外,您是否已经尝试过清理数据库文件夹?如果你不这样做,web2py将疯狂,因为文件说有表,但db没有。此外,请查看here,了解有关修复损坏的迁移以及有关sqllite的一些注意事项。