Details
Description
If you want to add a behavior to a behavior, you (depending on your template) can get an error message telling you, that the _table property is not an object.
This happens, as actAs() method of Record_Abstract does first the $tpl->setUp() call and then the $tpl->setTableDefnition(), as for the cascading templates - which are using Record_Generator - the $child->setTableDefinition() is called before $child->setUp() in method buildChildDefinitions(). Switching those two lines fixes the error and has, as far we can see (having it in our production system for quite a while now) no side effects besides fixing the error.
Hi, when providing feedback and you have a change, it is best to provide a patch. Can you generate a patch for your changes and attach it to the ticket?
However, if I understand your verbal description of the change correctly, it is not right. We can't call setUp() first, because setTableDefinition() is supposed to be called first. This is how it is supposed to work.