|
 |
|
 |
| |
ZopeMag Links:
Home Page
About the Fish
Issue 09
Issue 08
Issue 07
Issue 06
Issue 05
Issue 04
Issue 03
Issue 02
Issue 01
Latest Issue
|
|
 |
|
 |
 |
|
|
 |
| |
|
|
| |
Letter from the Editor:
Welcome
Interviews:
In our first issue we interview the father of the Wiki and the inventor of Extreme Programming.
Ward Cunningham
Tutorials:
Throughout the quarter we cover topics of interest to Zope developers, designers, and users.
MetaFlow
Databases and ZPTs
Custom User Folders
Zope and CSS
Intranets
Product Review: Every two weeks we review a new Zope Product
Z Shrink
External File
DocumentLibrary
ZWiki
|
|
 |
|
 |
 |
|
|
 |
| |
|
|
| |
Downloads: Products we talk about in this issues Articles and Reviews
ZShrink
Zope Page Templates
LocalFS
SimpleZPTmyAdmin
Extended User Folder
MetaFlow
|
|
| |
|
|
|
|
 |
External File
File Storage
- - - - - - - - - - - -
By Martina Brockman | April 28, 2002
 |
| |
| |
| Product name |
External File |
| Description |
Extends Zope to work with external files in a filesystem. Only the file's meta data is stored in the ZODB. |
| Release Date |
2002/02/18 |
| Version |
ExternalFile 0.9 |
| Overall Rating |
 (all ratings are on scale of 1-5 with 5 sushi being the best) |
| Usability |
 The installation is plain. The product is not too complex and can be handled without difficulty. |
| Software Design |
 ExternalFile is the base class for the CVSFile product and can be easily subclassed. |
| Documentation |
 The documentation is precise and sufficient. There are some help files and some Zope Help System Topic entries. |
| Usefulness |
 Keeps the ZODB from swelling up and enables the use of Zope objects with external applications, especially the CVS. |
| Categories |
Development, File Storage |
| What's new |
- |
| Size |
19528 |
| Requirements |
Zope 2.4.0+
Windows 9.x platforms
UNIX platforms
Mac OS
|
| URL |
ExternalFile
|
| License |
ariel-license
|
| Creator |
Craig Strong, Ariel Partners LLC www.arielpartners.com |
| Packaged as |
Python Product |
|
|
| |
 |
Pros
Referenced files are kept at their original location in the file system.
Together with the CVSFile product you can take hold of Zope objects with the CVS.
Cons
At this moment ExternalFile objects can be used as DTML objects exclusively.
There is no support for ZPTs or the like.
Description
The objects on a Zope server are stored internally in the ZODB which causes some well-known difficulties. So files stored inside the ZODB cannot be accessed easily by external applications and the size of the ZODB is increasing quickly. With the ExternalFile product you can avoid those difficulties as it extends Zope to work with files that are stored outside the ZODB.
An ExternalFile object is a reference which points to a file in the filesystem. Though the file's actual data is not stored within the ZODB it can still be used as a Zope object. Therefore ExternalFile objects can "behave" like DTML Methods, DTML Documents, and Images.
In contrast to the product ExtFile, ExternalFile objects point to files anywhere in the file system. Files are not copied to a central repository but kept in their original places. Thus, it is possible to use Zope objects with a version control system like the CVS. For that purpose it is strongly recommended to install the product CVSFile as well. CVSFile extends ExternalFile and enables you to use CVS functions through the management screen.
Creating an ExternalFile object is easy, yet there is more than one way to do it. First the standard information, such as an Id and an optional titel, needs to be defined for the reference object inside the ZODB. Furthermore a description can be added.
Then there are two possibilities: Either you can make a reference to a file that does already exist or you can make up a new file. You simply need to state the target filepath and if the file cannot be found at the given location it will be created for you. Unfortunately you cannot browse the filesystem for files; the target filepath has to be entered manually. Moreover you can upload the contents of a file to the referenced file. Any former data will be lost after the uploading process though. It's also possible to create multiple instances of ExternalFile which all point to the same file.
In this way you could for example create an ExternalFile instance with the Id addItem_dtml which would refer to a file addItem.dtml that might be stored inside a CVS sandbox. Thus addItem_dtml can be modified externally and can be used as a DTML Method within Zope. ASCII files can also be edited directly through the Management Interface, so it has to be made sure that the Zope user has the required write permission. There is also a View tab but only ASCII files and Images of the supported formats can be displayed.
The behavior of the ExternalFile instance, as well as its other properties are controlled through the Management Interface and can be modified at any time. Via the object's Property tab you can change the Id, the title, the description, the content type, the behaviour, and even the file's target path. Setting the right content type is important, otherwise a file won't be handled correctly. For example that could lead to broken images and cryptic data rubbish.
There are some text files which document the product, as well as some Zope Help System Topic entries. In the whole the documentation is brief but comprehensive and you will be able to utilize ExternalFile right away.
External file is an interesting alternative to ExtFile. Referenced files are kept at their original places and can be used as DTML Documents and DTML Methods inside Zope. But if you simply want to provide some binary files for download, using ExtFile might be the better choice, mainly because it provides the better features for that purpose. For example it can display different icons for different MIME types. But if you want to store DTML objects outside the ZODB which can for one thing be directly modified with some text editor and on the other can still be edited through the web, ExtFile will work perfectly. Its main advantage though is the fact it is the subclass for the CVSFile product. Together with this product you can use Zope objects with the CVS and you can execute CVS functions through the Zope Management Interface.
Product Review End.
|
|
Martina Brockmann:
was born in Berlin in 1978 in Eastern Germany. She finished school in 1998
and moved to Berlin, where she started studing History and Computer Science at the Technical University of Berlin.
When she started working at beehive two years later, Martina made first contact with Zope. At beehive she wrote
documentation and user manuals for beehive's own projects and for projects of beehive's customers.
Martina co-authored the first German Zope book "Zope: Content Management and Web Application Server",
the book "Zope: Web Application Construction Kit" and the book "Zope: How to Build and Deliver Web Applications".
|
|
 |
|