[Zope] File referencing and LocalFS
Dan L. Pierson
dan@sol.control.com
Mon, 3 Jul 2000 16:17:29 -0400 (EDT)
Rogerio Atem de Carvalho writes:
> 1)Folders names are directly related to string fields
> in a MySQL database which use spaces between words (eg
> New York), but folders names don't use spaces (eg
> NewYork). How can I skip spaces from database fields to
> make them refer to these folders (eg New York -->
> NewYork)?
Here's what I'm using to transform spaces to '_':
path = string.translate(path, string.maketrans(' ', '_'))
This is only invoked on file upload. If you're doing it a lot, I'd
just create the translation table once and stash it in a member
variable.
If you're doing this from DTML, the following untested code should be
a clue:
<dtml-let table="_.string.maketrans(' ', '_')">
...
<dtml-let fname="_.string.translate(name, table)">
...
</dtml-let>
...
</dtml-let>
Better check that maketrans and translate are in the version of the
string module available for DTML...
> 2)Using LocalFS, can I do something like <dtml-
> var "localfsObject['<dtml-var par1>'].['<dtml-var
> par11>'], where par1 and par11 are folder names (after
> skiping spaces)?
It'd be more like:
<dtml-var "localfsObject[par1][par11]">
I.E. inside the quotes you're in Python and par1 and par11 are
assumed to be variable names. The quotes would mean you were looking
for folders named "<dtml-var par1>", etc. Note that you neither need
nor want a '.' between the subscripts.