On Tuesday 02 Mar 2010 15:46:40 Michael "Ray" Rehbein wrote: > Looks like we have two sides on this. Here are a couple of issues related. > Short version: findManyToManyRowset should not contain extra columns. > > http://framework.zend.com/issues/browse/ZF-6232 > findManyToManyRowset() returns columns from the intersection table > > http://framework.zend.com/issues/browse/ZF-3709 > Inconsistent behaviour in Zend_Db_Table and supporting classes > > Unit tests were added to match the documented behavior. The extra > columns, as per documentation, were a quirk. There are also a few > cases that the unexpected columns break things. Specifically > triggering the throw: > > Row/Abstract.php: > throw new Zend_Db_Table_Row_Exception('The specified Table does not > have the same columns as the Row'); > > As for getting the profile columns back, this should be helpful: > $select = $db->select() > ->from($profileFieldsTableName, array('name')) > ->joinInner($profileValuesTableName, 'id=field_id', array('field_id', > 'value')) ->where('user_id=?', $user->id); > $profileValues = $db->fetchAll($select);
Thanks for your explanation. My biggest concern is this issue is introduced in a mini release. My 1.10.0 install worked perfectly and now with 1.10.2 not anymore. The removal of the column could help to increase safety and integrity of the data, but you can't just skip the columns when you have a new mini release. A chance for a BC problem is large and these changes should only occur in major or minor releases. And the last thing, I really liked I could query my data with data mappers. Now I still need to write the sql myself and that's a pity. I really need to move all my models into Doctrine soon :) Regards, Jurian -- Jurian Sluiman CTO Soflomo V.O.F. http://soflomo.com
