Hi Folks,
I don't know if anyone out there is actually trying to
*use* my ZCVSMixin/ZCVS Folder stuff, but if you are you certainly
want to get the latest release, ZCVSMixin-0.1.1.tgz from
the zope.org site:
http://www.zope.org/Members/sspickle/ZCVSMixin
I put some screenshots up there
Hi Adam,
I looked at your patch...
*** EMarket.py.orig Thu Jun 01 00:06:01 2000
--- EMarket.py Fri Jun 16 02:56:35 2000
***
*** 258,265
newMainF.transactionFolder = newTransF
Products.MailHost.MailHost.add(newMainF, 'eMarketMailhost',
!
I'm sure a lot of this is because EMarket was a 1.x product that has
seen relatively little change, in basic structure, since. I'm working
on some patched to allow (1) ZClasses to act as MarketItems and
Shoppers and (2) ZPatterns integration so that most objects can
be optionally stored in RDBM
Steve,
If the attribute is immutable, just define it as
a 'class' variable, rather than in the constructor.
e.g.,
class Foo(.. ):
newAttribute = 'hello?'
You can of course *change* it in the constructor for new
object, but all your old objects will just use the class
variable.
Hi Shane,
This is great.. it does what I wanted to do, but by making a
'fixed name' folder, (a la, 'acl_users'), to do the trick. It also
works a lot more like a 'real' CVS folder. Cool. And.. icing on the
cake... you can put it in any kinda container! Double Cool!
> "Shane" == Shane Ha
Hi David,
I think the design is flawed from the outset and should be
changed. Basically I was trying to have my cake and eat it too with
this one... and the solution (iterating through the folder class's
manage_options and slapping on my own was goofy anyway...) but there's
really no need. I'
Hi Jim, et. al...
>
> Steve and Shane,
>
> We've been positively *dying* to have cvs or cvs-like functionality. It's
> one of those things where we left the unix-everything-is-a-file-idiom and
> went, "Oh, um, heh, now what?" =)
>
Well.. I don't know much about cosource but I did just p
So let's start throwing some brute force hacking at the problem! ;-)
>> From a mail about the LinuxTag conference:
>> P.S. ABout ZPatterns: everyone I spoke to was thought the basic
>> idea behind ZPattern was good and sound and nice and so on. But
>> _everyone_ complained about
> "pje" == Phillip J Eby <[EMAIL PROTECTED]> writes:
>> a (default) rack of TableInfo objects.
>>
>> Now... some of the Tableinfo properties, and some of the View
>> properties are *really* in MySQL. I figured out, from the mail
>> list and the source code, that I can c
ther I'm missing some basic concept or it
doesn't really work that way!
;-)
thanks!
-steve
>>>>> "Steve" == Steve Alexander <[EMAIL PROTECTED]> writes:
Steve> Steve Spicklemire wrote:
>> I just want to make sure I understand.
Wow.. alright. I think I need "ZPatterns for Dummies" or maybe there
needs to be a disclaimer "ZPatterns are NOT for Dummies." ;-)
I've pretty much given up on Sheets for now. Nothing I've tried
has actually worked. I thought maybe I needed to switch to 2.2,
but then all the code that *was worki
Hmm... this is probably more of a plain Zope question than a ZPatterns
question.. but since I'm *using* ZPatterns, I thought I'd check
what other folks are doing to implement apps with ZPatterns.
I've been creating Specialists with DataSkin subclassed objects
in their defaultRacks. The methods
Hi ZPatterns folks...
ZPatterns-0.4.1snap1
Zope2.2.0-src
I have a specialist with a defaultRack storing DataSkin subclassed
ZClass instances with only persistent attribute providers.
or
...
raise AuthorizationFailed
...
works fine. What did I do now? ;-)
thanks for any ideas!
-ste
jects__' property to the
BTreeItems object. I'm not sure who should do that. maybe Rack.py?
For now.. I'll just sort the ids. ;-)
thanks,
-steve
>>>>> "Steve" == Steve Alexander <[EMAIL PROTECTED]> writes:
Steve> Steve Spicklemire wrot
Hi Folks,
Well.. I never heard any comments about my last question.. so I
thought I'd try to frame it differently. I just read Coad's book on
Object Models etc.. and I think I pretty well 'grok' it.. at least
enough to be mildly dangerous. ;-) I'm implementing a project with
ZPatterns and I w
Well.. I've started down the long winding road of porting EMarket to
ZPatterns. I'm sure I'll learn a lot. ;-) Every time I start
something I discover that my understanding is shakey.. but getting
less so as time goes on.. Here is a concrete problem. (I always
work better with concrete problems.
Hi Folks,
Is there any reason why a Rack shouldn't be 'exportable'?
I have a Rack of objects, but when I export/import
(as a .zexp) and then call "getItem" I'm getting:
Zope Error
Zope has encountered an error while publishing this resource.
Error Type: AttributeError
Er
Hi Folks,
OK.. I didn't hear much from my last plea for advice... I
thought perhaps such a concrete problem would product lots
of sage advice... but there's good news: here's another chance!
Really Really Basic:
If I have a class like so:
class Shopper(
OFS.SimpleItem.Item,
ZPatt
Cool! Thanks Steve.. I'll give that a try.
I guess the question behind the question though is is this a
reasonable way to handle property sheets? Is this how the designers
of ZPatterns envision property sheets will be used? I keep getting
the feeling that I'm missing a basic 'grokism' of t
Thanks Phillip!
OK. that helped a lot. The problem is that when things don't work
as I expect.. I guess (usually with a high degree of success)
that I am off base. Now I've just been experimenting with
this in a simpler 'dtml-only' way just to clarify how it's
supposed to work.
I created a sim
OK.. I think I've found a way to do what I want with propertysheets.
I just add a generic attribute provider, or skin script to grab
the attributes out of the propertysheet...
SkinScript to get property from particular property sheet:
WITH self.propertysheets.get('ShopperData') COMPUTE email=g
Hi andre...
Sorry.. EMarket is currently broken in 2.2.x. I'm trying to
find time to fix it (actually... I'm changing the code pretty
significantly to use the ZPatterns product) but it's slow going
as I have lots of other competing projects.
Help, as always, is appreciated. ;-)
-steve
>
ZPatterns 0.4.2a1 PlugIns.py bug?
I get a 'Name Error' aq_base when I hit the following code
while trying to update the index_html method of one of my
Specialists from CVSMixin.. I think that this would get
hit anytime you add an object whose id is already in the
acquisition path
-steve
d
}
else r=Py_None;
Py_INCREF(r);
return r;
}
break;
Anyway.. it looks like either fix is OK... I guess!
-steve
>>>>> "Steve" == Steve Spicklemire <[EMAIL PROTECTED]> writes:
Steve> ZPatterns 0.4.2a1 PlugIn
Hi Steve, (and any others who might care to comment)
I've been sorting through old ZPatterns email looking for
inspiration and I came upon this:
> "Steve" == Steve Alexander <[EMAIL PROTECTED]> writes:
Steve> Hi folks,
Steve> I've been looking at the DropZone example Phill
Hi Steve,
> "Steve" == Steve Alexander <[EMAIL PROTECTED]> writes:
>> ShopperManager.InsertItemIntoShoppersBasket(shopper=aShopper,
>> mi=aMarketItem, quantity=qty),
Steve> Seeing as the context is clearly ShopperManger (or
Steve> Shoppers), I don't think there's any need f
Hi Bill,
I doubt that skinscript is going to help with 'potentially
complicated calculations'. Skin Script works with ZPatterns
(Specifically DataSkins) to provide control over how attributes of
DataSkins are gotten, and stored. They are normally pretty simple
"if THIS then THAT"
kinds of
Every couple of weeks I get a little time to work on this stuff...
well, it's been a couple weeks. ;-)
I was flailing last time over the issue of how to create objects that
could be 'plugged' into different frameworks cleanly. One problem was
that my existing framework had specific classes of o
t;Itamar" == Itamar Shtull-Trauring <[EMAIL PROTECTED]> writes:
Itamar> Steve Spicklemire wrote:
>> (3) Has anyone found a better way to adorn 'plain' objects with
>> methods?
Itamar> An AttributeProvider?
Itamar> -- Itamar S.T. [
We're using ZCVSMixin for just such a scenario. It's working a
lot better than nothing. ;-) It does still have rough edges, and you
need to know too much about how it works to do anything complex, but
it does allow us to manage changes and test/stage/update etc with
a much greater degree of cont
Hello ZPatterns Folk.
I'm trying to implement 'delagation' with a custom Specialist. The idea,
(I think this is one of the goals of ZPatterns... to allow delegation
of responsibility after the Framework is built...)
I have:
a) MarketItemManager (Python subclass of Specialist) Some of meth
gt;>>>> "pje" == Phillip J Eby <[EMAIL PROTECTED]> writes:
pje> At 08:00 AM 9/25/00 -0500, Steve Spicklemire wrote:
>> So my retrieve item gets called. *unfortunately* it gets
>> called without any namespace parameter... so my retrieve
Thanks again... it's great that you're willing to entertain
my apparantly twisted use of ZPatterns. ;-)
> "PJE" == Phillip J Eby <[EMAIL PROTECTED]> writes:
PJE> To put it another way: design your whitebox specialist how
PJE> you want it. Make it complete, but of course some parts
Thanks again...
I just wanted to report that this worked like a treat!
The actual syntax I ended up using was:
WITH ProductSpecialist.getItem(self.id) COMPUTE
theRealThing = (RESULT is _.None) and NOT_FOUND or RESULT
WITH self.theRealThing COMPUTE
price=RESULT.discountPrice(self.theRealTh
to 'get around' the security system.)
I'm curious to know what you folks do here.. do you write accessor
methods for every type stored in your DataSkins?
Anyway.. thanks for the great tools! I'm having fun now. ;-)
-steve
>>>>> "Phillip" == Phillip J
Hi Phillip
First of all... please forgive the long message. When I started
it was going to be a quick note... now it's turned into a bit
of a novel... but you don't have to read it all. ;-> I'm spewing all
this out in part to illustrate some of the things I've done 'wrong'
so that others mig
OK.. here's the dumbest example I could cook up. It was
my first experiment with ZPatterns in July of last summer.
It was based on a really early release, I don't remember which,
but it seems to work with the latest.. (I just barely
testted it... ) Load the Product ToDoProducts.zexp
into the pro
Ack.. of course I forgot to test creating new instances there
was a snippet of code for editing and creating that didn't work with
the new propertysheet stuff. I fixed it just now... so it really
works. ;-)
-steve
>>>>> "Steve" == Steve Spicklemire <[EMAIL P
I'd love to bask in the glory of having done something really
significant. but just remember... it *is* the Worlds Simplest
(some might say Dumbest) example!
;->
-steve
> "James" == James Johnson <[EMAIL PROTECTED]> writes:
James> At last some meat AND potatoes for us feely touchy
That's it. I can't imagine anything simpler. ;-) Really!
-steve
>>>>> "Michael" == Michael Bernstein <[EMAIL PROTECTED]> writes:
Michael> Steve Spicklemire wrote:
>> Ack.. of course I forgot to test creating new
&
I should point out a couple of things that might not be
obvious (that I noticed only on a second 'read' of the explaination):
1) getPersistentItemIds() can be a pain.
is straightforward enough... but what if I don't care if they are
sorted, or I want to sort on some other property? One would
Erp! Sorry... I think the ZClass and the Rack got out of sync...
I'll upload a new 'consistent' pair..
sorry!
-steve
> "Itai" == Itai Tavor <[EMAIL PROTECTED]> writes:
Itai> Hi,
Itai> I installed the ToDoManager/ToDoProduct example
Itai> (http://www.zope.org/Members/sspickle/D
Ack.. sorry... I was making little changes last night to make sure the
ZClass was completely consistent with my explaination, and to make
sure I could start 'from scratch'. I created a 'new' ZClass, and a
'new' rack. This confused the 'old' Rack. (I didn't update the
ToDoManager.zexp, so if you d
Hi Michael,
> "Michael" == Michael Bernstein <[EMAIL PROTECTED]> writes:
Michael> - You skipped over creating the Product in the Products
Michael> folder.
Ooops! Sorry... I guess I assumed that the reader would
be familiar with ZClasses etc this should probably be
stated up fro
> "pje" == Phillip J Eby <[EMAIL PROTECTED]> writes:
>> - Propertysheets: You don't expressly say that Shared needs to
>> be a 'Common Instance Property Sheet'.
pje> Actually, if it's intended to be shared across all instances,
pje> there seems to me to be little reason to h
> "pje" == Phillip J Eby <[EMAIL PROTECTED]> writes:
pje> It is *not* undesirable to have ZClasses be subclasses of
pje> your core logic base class. Just make sure they *also*
pje> subclass DataSkin, or that you use the metaclass definition
pje> stuff above. You've actually
Debugging products is a pain... restarting Zope all the time is a Pain
THANK GOD for Shane Hathaway. ;-)
I am delighted to report general success with the Refresh product! My
only problem is while debugging the process of creating new EMarket
instances, I find that every time I run 'Refres
o be a call to your query:
WITH yourQuery(... parameters for your query... ) COMPUTE movie_link, movie_title...
etc.
If you get the same errors in the first case.. then your problem has
nothing to do with SQL.
-steve
>>>>> "Joachim" == Joachim Schmitz <[EMAIL PROTECTED]&
he first one to try
Joachim> it. I try it out.
Joachim> On Mon, 30 Oct 2000, Steve Spicklemire wrote:
>> Hi Joachim,
>>
>> Hmm.. I would start start really simple here, and then 'work
>> up' to the sql query Create a defaul
quot;getItem('anyOldThing')")
JS> File
JS> /usr/local/Zope-2.2.0/lib/python/DocumentTemplate/DT_With.py,
JS> line 146, in render (Object: theItem) KeyError: (see above)
JS> what's the best way to debug this ?
JS> On Mon, 30 Oct 2000, Stev
OK I think I found the problem(s):
*** Expressions.py 2000/10/18 23:11:55 1.1.1.3
--- Expressions.py 2000/10/31 14:14:09
***
*** 133,139
def eval(self,mapping):
"""Return the result of looking up/calling the name from 'mapping'.
If the object was
Hi Joachim,
> "Joachim" == Joachim Schmitz <[EMAIL PROTECTED]> writes:
Joachim> Hi Steve,
Joachim> that did it, many thanks, how did you debug this ?
The debugger is your friend. ;-). Seriously I'd be lost without it:
http://www.zope.org/Members/michel/HowTos/TheDebuggerIsYourFri
Would something like this work?
newSpecialist = Specialists.Specialist()
newSpecialist.id = 'goobers'
newSpecialist.title = "Goober Manager"
myFolder._setObject(newSpecialist.id, newSpecialist)
newSpecialist = newSpecialist.__of__(myFolder)
newSpecialist.RacksGroup.
Hi John,
This is one of the problems with SkinScript, and I've not found any
great way to sort through it. Here are my two (three?) cents worth
1) Break the SkinScript triggers down to the simplest possible
event, and test them individually. If this is not possible, then
debug the trigg
Hi Roche,
PJE produced some great comments about this in reaction to
my lame attempt at an example. There also some good discussion
about other questions on the list. Here are a few choice posts:
http://lists.zope.org/pipermail/zope-dev/2000-October/007232.html
http://lists.zope.org/piperma
Hi Casey,
I think this is a fine idea. The main thing that keeps me from
doing it is that JPython doesn't work on Netscape (Mac) and so (at this
point at least) I can't use it, unless I have a context where I can
insist that users use a particular browser.
The other annoyance is the long do
Hi Roche,
This is a known problem. Use:
Now you have the required itemIDs in itemIDs.
-steve
> "Roch'e" == Roch'e Compaan <[EMAIL PROTECTED]> writes:
Roch'e> I have a Customer and Address ZClasses based on Dataskin
Roch'e> as well as a CustomerManager specialist.
Hi Chris,
ZPatterns and ZCatalog work fine. Here is a skin script I've
been using to keep a catalog up to day with DataSkins:
WHEN OBJECT ADDED CALL Catalog.catalog_object(self,
_.string.join(self.getPhysicalPath(),'/'))
WHEN OBJECT DELETED CALL
Catalog.uncatalog_object(_.string.join(self.ge
Hi Nigel,
Yes.. the example still works. I am working on an update that
incorporates some of the suggestions folks have made and better
illustrates some ZPatterns concepts. Basically the example is *too*
simple, and it doesn't separate PD, and UI issues very well..
-steve
> "Nigel" ==
Hi Jimbo,
I'm not sure what you mean by 'not getting anywhere...' but I've
generally found it useful to work on problems like this one little
step at a time.
I might be tempted to just try:
WITH EmployZManager.getItem(self.id) COMPUTE original_object = (RESULT is _.None) and
NOT_FOUND or R
Hi Bill,
The 'type' of object is set in the Storage tab of the
rack. The specialist can decide which rack to use based
on circumstances that dicate one type of object or another.
-steve
> "Bill" == Bill Anderson <[EMAIL PROTECTED]> writes:
Bill> I want a specialist to have two (or
Hi Jimbo,
DataSkin and CatalogAware are incompatable. You can
however use SkinScript to emulate CatalogAwareness
here is a snippet I use on one site
WHEN OBJECT ADDED CALL Catalog.catalog_object(self,
_.string.join(self.getPhysicalPath(),'/'))
WHEN OBJECT DELETED CALL
Catalog.unc
Hi Petr,
If you're running on something unixy.. you could use ZCVSMixin...
-steve
> "PK" == Petr Knapek <[EMAIL PROTECTED]> writes:
PK> Hi Zopists, I am working on a Zope project and we decided to
PK> store source code in CVS. With python Zope products there is
PK> no problem
Hi Robin,
You can FTP to the 'methods' tab of your ZClass using:
ftp://name@server:xx21/Control_Panel/Products/YourProductFolder/YourZClass/propertysheets/methods
-steve
> "Robin" == Robin Becker <[EMAIL PROTECTED]> writes:
Robin> On the same kind of note I find that while the cod
Hi Roch'e,
I'm guessing that getAllContactsForCustomer is a "DTML Method". If
I remember correctly the third argument is a 'mapping object' that can
be used to augment the effective namespace available to the
method. Passing _.None should do nothing (I'm guessing you could just
use "getAllCo
Hi Ben,
GAPs are sort of deprecated at this point in favor
of SkinScript. In SkinScript you might do something like this:
WITH accounts.getItem(self.account_id) COMPUTE account_object=RESULT
or more carefully...
WITH accounts.getItem(self.account_id) COMPUTE account_object=(RESULT is _.No
Joachim,
If you don't care about existing *instances*, but just need a DataSkin
subclass you might be able to save labor by creating a subclass with
your old ZClass as well as DataSkin as base classes and use that for
new instances..
-steve
> "Phillip" == Phillip J Eby <[EMAIL PROTECTED]>
Hi Roch,
The whole traceback would be helpful.. one clue:
Error Type: TypeError
Error Value: hasattr, argument 2: expected string, int found
'hasattr' is the function that is complaining do you use
it in your code?
-steve
> "Roch'e" == Roch'e Compaan <[EMAIL PROTECTED]> writes:
In Roche,
OK.. it's the 'in' tag that's causing the problem. Why not try:
and see what 'in' is choking on...
-steve
> "Roch'e" == Roch'e Compaan <[EMAIL PROTECTED]> writes:
...
Roch'e> line 147, in render (Object:
Roch'e> modList="Products.Modules.getModulesForProduct(this(
Hmm... OK ... next question... what are you doing *in* the 'in' tag?
Somehow you're trying to access an object contained in an
object manager (one of your modules?) and you're using an
'int' rather than a string as an id. Can you post the code?
thanks,
-steve
> "Roch'e" == Roch'e Compaan <
n't allowed to be exposed directly by the security
machinery. However, 'sort' short-curcuits the machinery so that you
can 'handle' them (in this hack, you store them in a simple python
list). Anyway.. it's not clear it's a bug worth fixing... if it's
a bug at
Hmm... since triggers are done at transaction commit time, could
it be that the 'change' trigger doesn't happen if the change
occurs on the same transaction as an 'add'?
-steve
> "bentzion" == bentzion <[EMAIL PROTECTED]> writes:
bentzion> This simple issue is driving me crazy... I a
Hi Chris,
No.. you're not off your rocker... I think you can do all the
things that are possible through the web in your product, but some/(or
most?) of the *point* of ZPatterns is to allow for integration and
customization of your application after it's installed. A lot of that
happens in Sk
Hi Folks,
Ok.. this is the wierdest thing I've run into yet. Any ideas how
to diagnose this would be most appreciated. It's a little bit like
quantum mechanics. When you try to measure it... it changes. ;-)
I have a Data.fs that has somehow gotten into a state where
Zope just hangs there. I c
OK.. more details... this is definitely a PoPy issue...
I reinstalled ZPoPyDA, ran Zope in single threaded mode
( ./start -t 1 ) and then deleted my ZPoPyDA database adaptor.
Then I created a new one, connected to postgres, and tested it.
Then when I shut down Zope, and restared multi-threaded
Hi Joachim,
You want to initialize the value of a property that is inherited
from a base class to some constant value? I think you'll need to do
that in the constructor.
e.g.,
in the IntField_add method, inside the
tags...
-steve
> "Joachim" == Joachim Schmitz <[EMAIL PROTEC
Thanks... I'm pretty sure now that what I was was pthreads/popy
related. I didn't realize there was a new/updated PoPy/ZPoPyDA on the
zope site with lots of thread related (sem_init, sem_wait,... )
changes so I built it on my FreeBSD boxen and haven't seen the same
behavior since.
-steve
P.S.
I've been working out some issues with EMarket, and as a way to 'clear
the cruft'.. I decided to bite the bullet and do some more careful
object modeling. Other than scribbling on paper, and making up some
diagrams that look a little like those from Coad's book on Patterns
and Strategies, I've ne
Hi Itai,
> "Itai" == Itai Tavor <[EMAIL PROTECTED]> writes:
...
Itai> The 2nd way seems to go better with OO principles - all
Itai> handling of photos is delegated to the Photos Specialist and
Itai> the Product doesn't care if the photo exists or not, or
Itai> where it come
Itai,
I think this is a brilliant idea! I'm sure there are sixteen
ways to implement each of these... but having one concrete way would
be a big help to a novice
-steve
>
>
>Object relationship|
> (Pattern) | Implementation
>
>--
Hi Itai,
> "Itai" == Itai Tavor <[EMAIL PROTECTED]> writes:
Itai> "OrderingEntities.getItem(some_id).current_order_id)"> shows
Itai> me the value of current_order_id of the Employee object
Itai> some_id. But I can't figure out how to change the property
Itai> so it get chang
Hi Itai,
> "Itai" == Itai Tavor <[EMAIL PROTECTED]> writes:
Itai> Say I got several Participants, and some of those need to be
Itai> able to place orders. I create the Specialist
Itai> OrderingEntities to implement the role of 'someone who
Itai> places orders'. From what I u
? What,
Itai> another Specialist just to link Actors to Participants? Will
Itai> this never end :-(?
Itai> See, I'm stuck. Please please please could someone who do
Itai> not identify themselves as ZPatterns novices find the time
Itai> to add to this g
Hi Morten,
> "Morten" == Morten W Petersen <[EMAIL PROTECTED]> writes:
Morten> (Can't understand why I had to use an additional list
Morten> though).
You probably found that Zope doesn't allow you to access the
elements of a BTree object (which is what you get from
"persistentIte
Hi Deiter,
Hmm.. I just tried this with my highly experimental product
(LocalProc 0.0.1) and I didn't observe the same effect that you did
behind my Proxy Server. (I normally run with Rewrite... but when I got
your note I tried ProxyPass and it worked on the first try.)
(Good howto Anser! ht
Hi Morten,
There are two ways to subclass products. You can use straightforward
Python subclassing:
e.g.,In your custom Product.. here is an example from Zwiff:
> import Products.PythonMethod.Guarded
>
> from Globals import HTMLFile, MessageDialog
> from App import Common
>
> manage_addZ
Hi Itai,
> "Itai" == Itai Tavor <[EMAIL PROTECTED]> writes:
Itai> I'm already using globally unique ids, but still, doesn't
Itai> using the same id for the Participant and the Actor make
Itai> these objects too tightly coupled? Seems to me that Actors
Itai> should provide an
Hi Itai,
Good idea! I'll try to add this to the example.
thanks!
-steve
Itai> P.S. I've been struggling with a problem that might get
Itai> cleared up if you added it to the example:
Itai> Say you want to allow a user to add a ToDo from the
Itai> Deliverable screen (in addi
Thanks Roche!
> "RC" == RC Compaan <[EMAIL PROTECTED]> writes:
RC> Hi Steve
RC> I'm also a babe in the woods when it comes to object
RC> modelling, but here's my pennie's worth. Since code
RC> generation was not really required in the models I recently
RC> did for Zope
Hi Folks,
The Dumb ZPatterns example is updated. Now there is some more
realistic object referencing going on, borrowing of code snippets
between Specialists and suchlike. There is also more in the way of
reasonable documentation, though everything is in flux, and it still
doesn't resemble a
Hi Christian,
Well, nobody else answered that I saw... so I'll take a crack
at your questions
> "CS" == Christian Scholz <[EMAIL PROTECTED]> writes:
CS> Hi there!
CS> Finally I managed to get a basic understanding of how to do
CS> things with ZPatterns ;-) So seems quite
Hi Itai,
>>>>> "Itai" == Itai Tavor <[EMAIL PROTECTED]> writes:
Itai> Steve Spicklemire wrote:
>> Hi Folks,
>>
>> The Dumb ZPatterns example is updated. Now there is some more
>> blah blah blah
Itai> N
/test1/" />
I am in the test1 folder.
I don't see the behavior you describe.. What did I
misunderstand?
thanks,
-steve
>>>>> "CW" == Chris Withers <[EMAIL PROTECTED]> writes:
CW> Steve Spicklemire wrote:
>> Hi Chris,
>>
Hi Chris,
Random thoughts follow. ;-)
I think that if you make your DataSkins folderish it will be hard
to make the storage anything other than ZODB. However, Steve
Alexander posted a neat trick the other day where __bobo_traverse__ is
supplied by an attribute provider. You could use this t
Hi Chris,
>>>>> "Chris" == Chris Withers <[EMAIL PROTECTED]> writes:
Chris> Steve Spicklemire wrote:
>> I think that if you make your DataSkins folderish it will be
>> hard to make the storage anything other than ZODB.
Chris> W
Hi Steve,
Hmm.. is the 'id' of your PythonScript also getattr?
thanks,
-steve
> "Steve" == Steve Alexander <[EMAIL PROTECTED]> writes:
Steve> Steve Alexander wrote:
>> Let's say I have a DataSkin-derived ZClass that has the
>> attribute "forename" (in a dataskin attribute
Hi Steve,
Could you let some other value represent no car? (e.g., _.None?).
untested...
WITH CompanyCars.getCar(self.car_id) or NOT_FOUND COMPUTE
car=RESULT,
car_registration=registration
OTHERWISE LET
car=_.None
car_registration="no car"
WHEN OBJECT CHANGED CALL
HAS_CHANGE
Hi Andy,
I'm not sure what you mean by 'interface/way', so.. I'm going to
guess at two possible interpretations.
1) Basically ZPatterns allows you to define classes (DataSkins)
instances of which can optionally be used to view/create/change/delete
external data through methods of the class
Hi Itai,
I'm sure there's something clever you could do here with
an attribute provider for you user object that supplied
__roles__ dynamically somehow, but I'd need to think
about that more... one easy way to limit who can
see different stuff is to use a wrapper around
your access methods (e
Hi Andy,
I think that ZPatterns may be helpful for something like this. You
could have certain attributes loaded from an exteral method that looks
on the filesystem for stuff.. and others in ZODB. It could be
configurable via SkinScript. At least this might be a quick way to get
something up
1 - 100 of 142 matches
Mail list logo