i have made a few sites in Zope by now, and I often have problems with integrity in the database.
Ie. with a structure like this:
users user1 user2 user3 ...
articles article1 article2 article3
If I have an author field in "article1" that is the id of "author2" and I then delete "author2" I get an error when trying to get the authors properties like e-mail, name etc.
Off course I can test to see if the author exists before trying to pull out the data, but this seems like a messy way to do it.
How do the rest of you guys solve this problem? Is zPatterns nessecary?
What do you want to achieve? - The equivalent of foreign keys in relational Databases, for instance the automatic deletion of article1 if article1.author2 == 'user1' when you delete user1? Then I would use a completely different structure than the one above, perhaps a zclass which is instanciated for every author and can contain articles. - Or do you just want zope not to throw an exeption if ._[author2] doesnt exist? Then it should be possible to write a small method which emulates <dtml-var my_variable missing> for variables which contain the id of an object. (The functional analogon to the not working <dtml-var "_[my_variable]" missing>). So you can do <dtml-var "test_and_return_email(author=author_1)"> cheers, oliver