I have run into this a few times now, and I am sick of explicitly stating model->attribute = value for each property that I add to the db table.
The problem occurs when I add one or more fields to a database table after the model has been created. I can’t do bulk assignments using model->attributes = array() or model->setAttributes(array()) and expect to have the newly created fields updated in the model. Each time I try this, it’s only the fields that were present when the model was initially created are updated. Which definition within the model is examined when I do a bulk assignment like this?