I think you should create Page::getColumns() and fill it with the columns that **can** be saved to the database. save() will use this to check which columns can be saved and which can't.