running the method as have the permission "Access
contents information" ?
Looks like you may have uncovered a Zope security bug in :-/
How could we test this further?
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
7; Name ';'
NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' | CombiningChar
| Extender
Name ::= (Letter | '_' | ':') (NameChar)*
However, we could consider &dtml-foo.bar.baz; instead.
I can't t
ccurs from the
root object.
This patch is against Zope 2.2.1b1. It relies on the
restrictedTraverse() api.
A 2.1.x version would be possible, but would be rather messy.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
*** DT_HTML.py.old
--- DT_HTML.py
roject, I'm building a python product that consists
of a single Specialist, plus some python classes that can act as ZClass
base classes.
This latter project involves more text processing and python stuff. The
former project involves workflow and flexible presentation.
--
Steve Alexander
Software E
ss file get included in
some future version of Zope, XronUser could be included as one of these
bootstrap users by simply writing to a file.
--
Steve Alexander
Software Engineer
Cat-Box ltd
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTE
Loren Stafford wrote:
>
> Thanks, Steve.
>
> I have few questions below 8-) (I'm always better with questions than
> answers.)
>
> -- Loren
>
> From: "Steve Alexander" <[EMAIL PROTECTED]>
> > Hi Loren,
> >
> > > I
on a
spurious timezone to the end. I guess time.gmtime should become
time.localtime.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
I've put this in the Collector:
http://classic.zope.org:8080/Collector/1550/view
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zop
Perhaps the two lines ought to be replaced with:
uri=uri and uri[0]!='/' and '/'+uri or uri or '/'
and perhaps a comment
# input output
# None '/'
# '' '/'
# '/' '/'
# 'foo'
Dieter Maurer wrote:
>
> Steve Alexander writes:
> > Zope 2.2 CVS checkout August 21.
> >
> > I'm in the BST timezone, which is GMT+1.
> >
> > All the entries in Z2.log are one hour behind where they should be.
> >
> > 127.0.0.1: - - [
Shane Hathaway wrote:
>
> Steve Alexander wrote:
> > In lib/python/Products/ZCatalog/CatalogAwareness.py, the method "url":
> >
> > def url(self, ftype=urllib.splittype, fhost=urllib.splithost):
> > """Return a SCRIPT_NAME-
Saw this linked from Slashdot.
http://oss.software.ibm.com/developerworks/opensource/sashxb/wde_screenshots.html
I can see it being really nice for Zope -- custom user-interfaces, over
the web, with a ZServer backend :-)
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat
Steve,
I don't know what the problem is, but I have a temporary fix.
The problem is something to do with providing a "help" button.
In lib/python/App/manage_tabs.dtml, at around line 148, comment out this
entire dtml-with block:
--
Steve Alexander
Software E
Steve,
Ok, it is a bug in manage_tabs.
Here's a proper fix:
Replace the with and
with .
I'm putting this in the Collector.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-De
t/propertysheets/foo/manage and
the equivalent for bar.
This is with the *very latest* CVS Zope 2 and ZPatterns 0-4-1snap1.
I was using a Dataskin-derived ZClass instance. Perhaps that makes a
difference? It really shouldn't matter though.
--
Steve Alexander
Software Enginee
ecialist/object/propertysheets/manage from working. It
also stops _v_currentSheets from returning all the sheets a Dataskin
might have.
Phillip, is this fixed in your internal version?
If not, I'll add the method over the weekend.
--
Steve Alexander
Software Engineer
Cat-Box limited
ht
Steve Alexander wrote:
>
> I'm using ZPatterns 0.4.1snap1.
>
> The LinkToParentProviders datamanager doesn't work properly because it
> assumes that the Specialist it lives in has a _PropertySheetsFor(client)
> method.
>
> However, Specialists (and DataM
fferent roles with
different specialists.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding!
ne 0, in ?
File lib/python/ZClasses/ZClass.py, line 452, in createInObjectManager
(Object: Drug)
File lib/python/OFS/CopySupport.py, line 442, in _setId
(Object: asdasd)
File lib/python/Products/ZPatterns/DataSkins.py, line 208, in
__set_attr__
patch I posted a few
minutes ago.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related
raction of a
Specialist.
Please think about keeping the feature, if it doesn't make things too
complicated.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mai
to LOG in Catalog.py:
LOG('Catalog', ERROR, ('uncatalogObject unsuccessfully '
'attempted to uncatalog an object '
'with a uid of %s. ' % str(uid)))
--
Steve Alexander
Software Engineer
Ca
't know how important that really is, though.
Perhaps your method should be changed to this:
def __url(self):
return '/'+string.join(self.getPhysicalPath(), '/')
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
_
parated
strings.
Example SkinScript:
WHEN OBJECT ADDED, CHANGED CALL Catalog.recatalog_object(self,
self.getPathAsString())
WHEN OBJECT DELETED CALL
Catalog.uncatalog_object(self.getPathAsString())
Any comments?
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
__
Steve Alexander wrote:
> Shane Hathaway wrote:
>
> >
> > I was suspicious of the entire method so I wrote a replacement which is
> > based on a new interface available in Zope. I *think* it's correct,
> > but it's a drastic change so it's only i
thing
that a Specialist manages.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related lists -
possible to override methods inherited from python classes
because\n"
" unbound methods gotten from Python classes cannot be called with
\n"
" extension class instances. \n"
Is there some documentation of this on zope.org or dev.zope.org that
I've missed?
T
ne 34, in
_objectDeleting
(Object: Transactional)
AttributeError: _objectDeleting
Therefore, I've patched _objectDeleting similarly.
The SkinScript method is:
WITH SELF COMPUTE
title="foo", fish='%s, (%s)' % (id,name)
I suspect this is not the best way to solve th
htly longer URL
for objects in the BTreeFolder.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding!
from have a __init__ method, I
guess not. Or, does default__class_init__ do anything else?
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
"Phillip J. Eby" wrote:
>
> At 10:22 AM 8/27/00 +0100, Steve Alexander wrote:
> >
> >I've fixed this by adding a test to the start of __set_attr__ of
> >DataSkins.py:
> >
> >def __set_attr__(self,name,val,_v_dm_=_v_dm_):
if self.__dict__.has_key('id') and val==self.__dict__.['id']:
return
else:
self.__dict__['id']=val
return
raise
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Steve Alexander wrote:
>
> What rubbish! I didn't mean that at all!
>
> I think what I meant was this:
>
> try:
> dm = self.__dict__[_v_dm_]
> except KeyError:
> if name=='id':
> if self.__dict__.has_key('id') and val==se
e ObjectManager stores subobjects in a BTree that is directly in the
object (not stored in an attribute provider).
On __getattr__, subobject ids are searched before the datamanager is
asked to provide attributes.
--
Steve Alexander
Software Engineer
ror occurs because the rename method redirects to:
http://puffin.cat-box.net:7080/test/Customizers_
Pressing the "customizers" tab yields the url:
http://puffin.cat-box.net:7080/test/Customizers_/Customizers_/manage_workspace
--
Steve Alexander
Software Engineer
Cat-Box limited
ht
Steve Alexander wrote:
> Phillip J. Eby wrote:
>
> > Now, I can provide *unfiltered* linkage by direct delegation, but this
> > would mean dropping the ability to selectively take only certain
> > attributes
> > or sheets from the parent. But I suppose
write a short reference and/or tutorial for us to
> include (perhaps as a help screen from the SkinScript method object's
> management screens)? Thanks.
I have a DataSkins how-to / short introduction that is about half
complete. I was hoping to get this out by today, b
5, in
_indexedSearch
TypeError: (see above)
This seems to be a simple type incompatibility error.
Attached is a patch that fixes this.
In Collector, http://classic.zope.org:8080/Collector/1586/view
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
*** Catalog.py
a standard timezone to the date before you
store it. Otherwise, you may have problems with days slipping around if
your server changes timezone or you enter daylight savings time. This is
more of an issue near to the GMT zone.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-
While updating a load of DataSkins all together using a ZCatalog, I got
this error:
2000-09-03T08:03:13 PANIC(300) ZODB A storage error occurred in the last
phase of a two-phase commit. This shouldn't happen. The application may
be in a hosed state, so transactions will not be allowed to co
s the
top-level transaction that it knows about.
Then again, I'm new to the way ZODB handles transactions, so I might
well be wrong here.
More later...
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-De
ZODB/Transaction.py this comment. Perhaps it is relevant?
# - For every jar for which we've called tpc_begin on,
# we either call tpc_abort or tpc_finish. It is OK
# to call these multiple times, as the storage is
# required to ignore these calls if tpc_begin has not
# been
tml as the default.
Now, view the page, and view its source. You'll see no element.
Is this intentional? Does Zope now not bother with the body element if
it doesn't think it is needed? This would seem to be the rationale
behind the request attribute "request._hacked_path".
C
t.
> (id='GBookProps', ns=''
You probably ought to close the bracket, quote and tag here.
>
The variable "ni" won't be bound to anything in particular here.
> 'string')">
>
>
>
ook.newItem(id)">
>
> (id='GBookProps', ns='')">
You'll want a dtml-let here I should think.
> nips="ni.propertysheets.get('GBookProps')">
> 'string')">
>
>
And, of course, another
itch between using a dict and a BTree to store the
sub-objects, on an instance-by-instance basis. The switch-over
will be slow, but it will be easier than changing the base-class
of existing instances.
Comments?
--
Steve Alexander
Software Engineer
Cat-Box limited
ht
Steve Spicklemire wrote:
>
> 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 PROTEC
leave checked
the option "Include standard Zope persistent object base classes."
That works for me.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.
a list containing the
string literal "_.newItem(id)"
> nips ="['_.get('GBookProps')']">
>
> guest_name, 'string')">
>
>
>
You need to add a propertysheet to object.propertysheets before you can
add properties
your Tickets, and records the ticket_id, ticket_date and
response_time in a ResopnseTimes ZCatalog.
Then, I'd use ZCatalog queries to get average response times for various
periods of time.
I can't see a use for SkinScript in there, though :-)
ps. I am working on a skin script howto. E
in an external method:
obj = self.restrictedTraverse(REQUEST.PATH_TRANSLATED)
This stopped working when I tried the software on Windows.
Bug or feature?
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [
Evan Simpson wrote:
>
> From: "Steve Alexander" <[EMAIL PROTECTED]>
> > obj = self.restrictedTraverse(REQUEST.PATH_TRANSLATED)
> >
> > This stopped working when I tried the software on Windows.
> >
> > Bug or feature?
>
> I'm no
Steve Alexander wrote:
>
> I have a customizer folder with various data-plugins and customizers.
> File lib/python/Products/ZPatterns/Providers.py, line 178, in
> namesForRegistration
> (Object: PlugInBase)
> TypeError: (see above)
>
> I'll start to lo
namesForRegistration
(Object: PlugInBase)
TypeError: (see above)
I'll start to look into this.
Any advice would be most welcome.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
Dieter Maurer wrote:
>
> Steve Alexander writes:
> >
> > When I look at the DTML Document through the web, the "self" object
> > passed to the breadcrumbs external method is the folder that contains
> > the DTML Document.
> > (I thought
s and
subtransactions are supposed to work?
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related
altogether for this release?
Or are there still folks out there using ZPatterns with 2.1.6?
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zop
st, but not least, you can now place Specialists
> inside other Specialists without getting an error.
According to diff, there is no difference between DynPersist.c in the
latest release, and DynPersist.c in 0-4-2a1.
The dates on the files are both Apr 26 too.
--
Steve Alexander
Software Engi
security checks still follow
standard acquisition, but the object that is returned from an
acquisition search is chosen context first.
Without further optimisation, this means a containment security check
for each element of the context. Which kind
lassName.inheritedAttribute('__init__')(self, id)
This is assuming that you have the argument "id" in your __init__ method.
I've no idea whether it will solve your problem, as I haven't tried to
reproduce it.
--
Steve Alexander
;s something in Acquisistion.c that reserves all aq_.*
names.
Bug or feature?
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No
ough acquisition wrappers?
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related lists -
http
_folder->O"
aq dtml method containing the dtml above
Typing into your browser the URL .../some_folder/A/aq will get you
some_folder->O
Typing into your browser the URL .../some_folder/B/A/aq will get you
some_folder->B->O
To verify this against normal acquisition, us
Steve Alexander wrote:
>
> Here's an external method that ought to work. Well, it works for me:
>
> # acquire the object of name "attr" by context alone
> def aquire_by_context(self, attr):
> ob = self
> while hasattr(ob, 'aq_base
Steve Alexander wrote:
>
> Of course, you can simplify it to:
>
> # acquire the object of name "attr" by context alone
> def aquire_by_context(self, attr):
> ob = self
> while hasattr(ob, 'aq_base'):
> if hasattr(ob.aq_base, attr):
opertysheets.get('cd_info') COMPUTE
artist=getProperty('artist'),
label=getProperty('label')
You can then write your ZClass index_html and use or
&dtml-artist; where you want the artist, and similarly with label.
--
Steve Alexander
Software Engineer
Cat-Box limited
h
urce, and
the version of ZPatterns.
When you talk about the operating system, say just what operating system
you are using to do your development on right now. If you are really
simultaneously working and testing on Windows 98, NT4, 2000 and RedHat
linux 6.2, then that's fine. Otherwise
e line 295, from
this:
excludePIs=()
to this:
excludePIs=[]
This seems like more of a Zope implementation fault: surely a multiple
selection property should always be set to a list, even when empty?
Patch attached.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.c
into the URL field of my browser.
However, I can't get a list of the sub-objects by calling objectIds.
I'm trying to make sense of External Attribute Provider so that I can
write a BTreeAttributeProvider for DataSkinAddons, as discussed on the
zope-dev list at the end
still have to have the ZPatterns product
installed, obviously. I can see this becoming even more useful when
ZClasses work with PlugIns. This may be a while off, though.
I'm still in favour of splitting ZPatterns into separate DataSkins and
PlugIns packages in the next feature release.
s where you need them, and explicitly
give the user id. You just can't select from the management interface.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.z
es=[]
>for i in user_ids:
>names.append(i)
>return names
You can also use the Python map function for this. It will be more
efficient that iterating through user_ids using "for i in user_ids:"
return map(None, self.UserSource.getPersistentItemIDs())
--
Steve Alexa
ow are you trying to do this? You can pass in the string '1' for true
and '0' for false.
> Could someone please give me some example code or hints?
It would really help to see some of the code you're already using. Can
you also say a bit about what you are trying to do
what the benefit would be. Perhaps there could be a plug-in
tab in a specialist for "methods acquired by rackmounted dataskins".
> (3) Has anyone found a better way to adorn 'plain' objects with methods?
I've used ordinary acquisition, as described just above.
You c
whether __allow_groups__ has an id, and then
> checking whether that 'id' exists.
I've read through all the Zope source that uses __allow_groups__, so I
think I know what it is used for.
What I can't work out is, why is this value called __allow_groups__ ?
Can anyone
llowed and what is not is maintained in one
place, and the knowledge can be declared flexibly using regular expressions.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http:/
some reason that local roles don't make sense within
products, and so I have to copy my prototype folder to elsewhere in the
ZODB, and then set the local roles?
--
Steve Alexander
Software Enigineer
Cat-Box limited
http://www.cat-box.net
___
Zope
Steve Alexander wrote:
>
> I want to define the local roles on the "prototype" folder that is
> inside my Product. However, when I go to
> Control_Panel/Products/MyProduct/prototype/manage_access, I get the "map
> permissions to permissions" screen, rather t
Steve Alexander wrote:
>
> > Or, is there some reason that local roles don't make sense within
> > products, and so I have to copy my prototype folder to elsewhere in the
> > ZODB, and then set the local roles?
>
> Correction: I mean "user-defined roles&q
ZPatterns ZPatterns-0-4-2a3
version.txt still reads as ZPatterns-0-4-2a2
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No
d): pass
commit=tpc_abort=tpc_begin
The assignment you see is just a short-hand way of saying that commit,
tpc_abort and tpc_begin have the same method signature and the same
implementation
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
_
x platform.
comtastic.nipltd.net
You can build one yourself on that server.
Untar ZPatterns as usual
Go into the lib/python/Products/ZPatterns directory
Type cp /usr/lib/python1.5/config/Makefile.pre.in .
Type make -f Makefile.pre.in boot
Type make
then restart Zope.
--
Steve Alexander
"steps"
property as an attribute, and also a neatly formatted version of the
same, using this SkinScript:
WITH self.propertysheets.get('journey') COMPUTE
steps=getProperty('steps'),
steps_comma_sep=_.string.join(self.steps, ',
t; clause too, when
the next release of ZPatterns comes out.
Thanks.
> At 03:45 PM 10/4/00 +0100, Steve Alexander wrote:
> >I just found out that you can access all sorts of useful methods in
> >SkinScript from the magical "_" namespace variable.
> >
> >
Steve Alexander wrote:
>
> "Phillip J. Eby" wrote:
> >
> > Just out of curiosity, did you find this out by reading the draft
> > SkinScript reference documentation on the ZPatterns Wiki?
>
> No. I just guessed.
> I think I might have read it in the
returns every message with 'call'
> in it, which is not quite the same thing!
For cases like that, I have downloaded the plaintext mail archives as
available from http://www.zope.org/Resources/MailingLists
I then use unix grep on them to search for just what I need.
--
Steve Alexa
uot;""")
>>> my_dt(None, {'a':4})
'5'
The object my_dt is callable, and takes the arguments (client,
namespace). You can put a REQUEST in place of the simple dictionary I
used above.
If you're trying this, make sure you have the
hatever it is
called now), as, if I remember correctly, it sends sys.stdout to a file.
Xron could do something to ensure that sys.stdout goes somewhere before
it calls Event.set().
Xron cannot just put a try: except: block around ScheduleChange.set(),
because the call to set the Event would stil
ance with transient
problems whilst preventing Xron from choking resources.
--
Steve Alexander
Software Enigneer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross p
needed to run methods I want to be scheduled via Xron.
This is not the ideal way to make Xron use authentication. I posted a
proposed design for that to zope-dev in August.
http://lists.zope.org/pipermail/zope-dev/2000-August/006548.html
http://lists.zope.org/piper
should fire off threads of its own and not rely on an external facility to
> run the jobs?
I'd really like to see a scheduler as a standard part of Zope.
I think it would be good to have scheduled methods called from within
Zope, rather then going through http. I don't know enough abo
ple fix is "mkdir help" from the PlugIns directory.
--
Steve Alexander
Software Enigneer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross po
ith the new ZPatterns,
please let me know.
I think the change in ZPatterns is to get rid of some cruft for
supporting both Zope 2.1.x and Zope 2.2.x. Now that ZPatterns only
supports Zope 2.2.x, the code becomes clearer. Unfortunately, this
breaks other products that use ZPatterns intimately
Steve Alexander wrote:
>
> Your fix looks just fine, and I'll include it in a new release soon. If
> you find any other problems using DataSkinAddons with the new ZPatterns,
> please let me know.
>
> I think the change in ZPatterns is to get rid of some cruft for
>
appear for this in the next release of
DataSkinAddons. Until then, use SkinScript if you want to abort
the transaction if there is a problem cataloguing or uncataloguing.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
dea:
from string import join, replace
def kw_path_for_catalog(self):
keywords=[]
pp=self.getPhysicalPath()
for p in range(2, len(pp)+1):
keywords=keywords+[join(map(fix_bad_chars, pp[1:p]), '_')]
return keywords
def kw_path(self):
return join(map(fix_
this is row &dtml-sequence-item;
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTM
19991024 (release)] on sunos5
Type "copyright", "credits" or "license" for more information.
>>> a=''
>>> a.foo='bar'
Traceback (most recent call last):
File "", line 1, in ?
TypeError: object
__call__ error.
With the new cDocumentTemplate.so, it works as expected.
So in summary, it works for me.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/z
classes all in one
place. Coad's notation is more about showing interactions of objects,
whereas UML makes that awkward, and is mostly used for expressing static
information about relationships between classes.
--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net
101 - 200 of 512 matches
Mail list logo