我在SilverStripe中拥有相当大的数据库,偶尔也会更改它。大部分时间它工作正常,但取决于我可以通过参考约束获得蓝色文本的变化。在过去,我必须进入并手动删除表,约束或临时表。现在我还有另外一个我不想放弃的东西。以下是信息:
Field SiteTree.ClassName: changed to varchar(255) default 'SiteTree' check ("ClassName" in ('SiteTree', 'Page', 'HomePage', 'ErrorPage', 'RedirectorPage', 'VirtualPage')) (from varchar(255) default 'SiteTree' check ("ClassName" in ('SiteTree', 'Page', 'ErrorPage', 'RedirectorPage', 'VirtualPage', 'VirtualPageTest_VirtualPageSub', 'CMSMainTest_ClassA', 'CMSMainTest_ClassB', 'CMSMainTest_NotRoot', 'CMSMainTest_HiddenClass', 'ContentControllerTest_Page', 'ContentControllerTestPageWithoutController', 'ContentControllerTestPage', 'SiteTreeActionsTest_Page', 'SiteTreeTest_PageNode', 'SiteTreeTest_Conflicted', 'SiteTreeTest_ClassA', 'SiteTreeTest_ClassB', 'SiteTreeTest_ClassC', 'SiteTreeTest_ClassCext', 'SiteTreeTest_ClassD', 'SiteTreeTest_ClassE', 'SiteTreeTest_NotRoot', 'VirtualPageTest_ClassA', 'VirtualPageTest_ClassB', 'VirtualPageTest_ClassC', 'VirtualPageTest_NotRoot', 'VirtualPageTest_PageWithAllowedChildren', 'SiteTreeTest_StageStatusInherit')))
对于我的Live和版本表也是如此。
我对数据库的最新更改与页面类型无关。它也完成dev/build
,因此500错误不会导致不应用更改。
这里发生了什么,如何在不丢桌的情况下摆脱这种情况?
我还应该在postgresql db中添加它。