[ZDP] Re: [Zope] object modification date - how ?
Tue, 16 Mar 1999 12:21:01 -0500 (EST)
On Tue, 16 Mar 1999, Martijn Faassen wrote:
> See my later answers in this thread for some horridly complicated ideas
> on FAQ order issues. :)
[Pavlos wakes up in a bad mood- has wine instead of coffe to fix
him- doesn't help- hopes that the Martijns sense of humor will chear him
up-instead he finds horrid serious discussions about the FAQ of Life to be
written by the earthlings and administered automatically be each nation,
religious sect, pervert group- without conflict and delivered to the
venutians in year 2010- gets depressed has some more wine ...- its amazing
what crap I can come up with when I have wine for breakfast.]
Looks like the approach of having all the entries and their
associated properties collected in one folder and then define 'views'
based on some criteria is the one to follow. At least most of the zdp
folks who have some idea about maintaining FAQ's lean towards such an
approach. It also makes sense as Martijn Pieters pointed out to use a
relational db. I have never written an sql query in my life so I
can't offer any suggestions on how to go about it.
I still think that we should go all the way and split questions and answer
pairs too. And then have properties to questions that indicate the primary
answer, as well as other related answers.
A few comments ...
A hierarchical structure makes it easy to assign permissions to different
maintainers. Each section can be under the control of a different
maintainer/maintainers and permissions can then be set using Zope's very
flexible permissions mechanism.
Unless ZTables is open sourced then anyone wishing to use the FAQ tool
will need access to ZTables.
As Martijn Faassen suggested, it would be a good idea to toy around with a
few suggestions and designs before we settle on one. Here is a very simple
Create a folder of subfolders each subfolder representing an entry. Add a
few entries. Every zdp folk can add properties that they think are
important in categorizing the FAQ. Views can be generated by simple
external methods like (untested):
return filter(lambda a,b=section:a.section==b,self.objectValues())
return filter(lambda a,b=level:a.level==b,self.objectValues())
Then if you want to display all entries of level zen you can do things
<!--# in "entries.filter_by_level('zen')" sort=order_no-->
<!--# var (show something interesting) -->
This much for now