[eluser]bobosayhello[/eluser]
[quote author="OverZealous" date="1266630369"][quote author="bobosayhello" date="1266618591"]
That is, why does DMZ require the use of an extra joining table even when there is just a one-to-many relationship between two tables? What's the problem with the traditional approach of having a foreign key in the table of 'many' and making it refer to the primary key in the table of 'one'?[/quote]
As mentioned earlier, it does not require an extra table. DMZ handles In-Table Foreign Keys, which it says on the first page of the manual ;-), as well as under <a href="http://www.overzealous.com/dmz/pages/database.html">Database Tables</a> (see the bottom).
DMZ is based upon the older DataMapper by stensi, and his design required full Fifth-normal form compliance. Obviously that has negative performance and database complexity side effects, which was one of the original factors for forking DataMapper. (Well, is it really a fork if the original has not been updated?)
There is an
awesome new release coming soon (probably early next week), but the changes are mostly performance and new-features based, so the upgrade from 1.6.2 to 1.7.0 should be very smooth.[/quote]
Yes, I am sorry I must have read the documentation of the original version of DataMapper and thought it's your version. I am now feeling very safe to use your DMZ.
Thank you very very much for your wonderful ORM.