Forum OpenACS Q&A: Re: Some tips about XoTcl development best practices

Collapse
Posted by Antonio Pisano on
Another thing I am interested into is the right workflow when upgrading the data model: I have tried defining a class like this

::xo::db::Class create ::cic::Location -superclass ::xo::db::Object -slots {
::xo::db::Attribute create name
::xo::db::Attribute create street
::xo::db::Attribute create number
::xo::db::Attribute create zone
::xo::db::Attribute create region
}

Then I have modified the definition so it could include other columns like this

::xo::db::Class create ::cic::Location -superclass ::xo::db::Object -slots {
::xo::db::Attribute create name
::xo::db::Attribute create street
::xo::db::Attribute create number
::xo::db::Attribute create zone
::xo::db::Attribute create region
::xo::db::Attribute create country
::xo::db::Attribute create category -datatype integer -references categories(category_id)
}

The definition seems correct, and issuing the command in the shell returns the previously created object type, but the new fields are not added to the data model. What is the right way to do that?