[Checkins] SVN: zope2book/trunk/source/UsingZope.rst Starting point for restification of ZMI chapter.
Tres Seaver
tseaver at palladion.com
Tue Feb 10 13:04:28 EST 2009
Log message for revision 96401:
Starting point for restification of ZMI chapter.
Changed:
A zope2book/trunk/source/UsingZope.rst
-=-
Copied: zope2book/trunk/source/UsingZope.rst (from rev 96398, zope2book/trunk/UsingZope.stx)
===================================================================
--- zope2book/trunk/source/UsingZope.rst (rev 0)
+++ zope2book/trunk/source/UsingZope.rst 2009-02-10 18:04:28 UTC (rev 96401)
@@ -0,0 +1,628 @@
+Using the Zope Management Interface
+
+ Introduction
+
+ When you log in to Zope, you are presented with the Zope
+ Management Interface (ZMI). The ZMI is a management and
+ development environment that allows you to control Zope,
+ manipulate Zope objects, and develop web applications.
+
+ The Zope Management Interface represents a view into the Zope
+ *object hierarchy*. Almost every link or button in the ZMI
+ represents an action that is taken against an *object*. When you
+ build web applications with Zope, you typically spend most of your
+ time creating and managing objects.
+
+ Don't be frightened if you don't understand the word "object" just
+ yet. For the purposes of this chapter, the definition of an
+ "object" is *any discrete item that is manageable through the
+ ZMI*. In fact, for the purposes of this chapter,
+ you can safely replace the word "object" with the word
+ "thing" with no ill effects. If you do find something confusing, however, you may
+ want to review the "Object Orientation":ObjectOrientation.stx
+ chapter for more detail on objects.
+
+ How the Zope Management Interface Relates to Objects
+
+ Unlike web server applications like Apache or Microsoft IIS, Zope does not
+ "serve up" HTML files that it finds on your server's hard drive.
+ Similarly, the objects that Zope creates are not stored in
+ ".html" files on your server. There is no file
+ hierarchy on your server's computer that contains all of your Zope
+ objects.
+
+ Instead, the objects that Zope creates are stored in a
+ database called the "Zope Object DataBase", or the *ZODB*.
+ In default configurations, the ZODB creates a file
+ named "Data.fs" in which Zope stores its objects. The ZMI
+ is the primary way by which you interact with
+ Zope objects stored in this database. Note that there
+ are other methods of interacting with objects stored in the ZODB,
+ including FTP and WebDAV, which are detailed in the chapter in
+ this book entitled "Managing Zope Using External
+ Tools":ExternalTools.stx, but the ZMI is the primary management
+ tool.
+
+ ZMI Frames
+
+ The ZMI uses three browser frames:
+
+ * The left frame is called the *Navigator Frame*, which can be used to
+ expand or collapse a view into the Zope object hierarchy, much like you would expand and collapse a view of files using a file tree widget like the one in Windows Explorer.
+
+ * The right frame is called the *Workspace Frame*, which displays a
+ particular view of the object you're currently managing.
+
+ * The top frame is called the *Status Frame*,
+ which displays your user name (when logged in),
+ as well as a drop-down list that performs various
+ actions.
+
+ The Navigator Frame
+
+ In the left-hand, or *Navigator*, frame, you have a view
+ into the *root folder* and all of its subfolders. The *root
+ folder* is in the upper-left corner of the tree. The root folder
+ is the "topmost" container of Zope objects: almost everything
+ meaningful in your Zope instance lives inside the root folder.
+
+ "The Navigator Frame":img:3-1:Figures/navigator.jpg
+
+ Some of the folders in the Navigator are displayed with "plus
+ mark" icons to their left. These icons let you expand the folders
+ to see the sub-folders inside them.
+
+ When you click on an object icon or name in the Navigator, the
+ *Workspace* frame will refresh with a view of that object.
+
+ The Workspace Frame
+
+ The right-hand frame of the management interface shows the object
+ you are currently managing. When you first log into Zope, the root
+ folder is displayed as the current object. The workspace gives you
+ information about the current object and lets you manage it.
+
+ "The Workspace Frame":img:3-2:Figures/workspace.jpg
+
+ A series of tabs is displayed across the top of the screen. The
+ tab that is currently active is highlighted in a lighter color. Each tab takes you
+ to a different *view* of the current object, and each view lets you
+ perform a different management function on that object.
+
+ When you first log into Zope, you are looking at the *Contents*
+ view of the root folder object.
+
+ At the top of the workspace, just below the tabs, is a description
+ of the current object's type and URL. On the left is an icon
+ representing the current object's type, and to the right of that
+ is the object's URL.
+
+ At the top of the page, 'Folder at /' tells you that the current
+ object is a folder and that its path is "/". Note that this path
+ is the object's place relative to Zope's "root" folder. The root
+ folder's path is expressed as "/" , and since you are looking at
+ the root when you first log in, the path displayed at the the top
+ of the workspace is simply "/".
+
+ Zope object paths are typically mirrored in the URLs that are used
+ to access a Zope object. For instance, if the main URL of your
+ Zope site was 'http://mysite.example.com:8080', then the URL of
+ the root folder would be 'http://mysite.example.com:8080/' and the
+ URL of 'Folder at /myFolder' would be
+ 'http://mysite.example.com:8080/myFolder'.
+
+ As you explore different Zope objects, you'll find that the links
+ displayed at the top of the workspace frame can be used to
+ navigate between objects' management views. For example, if you
+ are managing a folder at */Zoo/Reptiles/Snakes*, you can return to
+ the folder at */Zoo* by clicking on the word *Zoo* in the folder's
+ URL.
+
+ The Status Frame
+
+ The "status frame" at the top of the management interface displays your
+ current login name, along with a pull-down box that lets you select:
+
+ *Preferences*: By selecting this menu item, you can set default
+ preferences for your Zope management interface experience. You
+ can choose to turn off the status frame. You can also choose
+ whether you want the management interface to try to use
+ style sheets. Additionally, you can change the default height
+ and width of text-area boxes displayed in the ZMI. This information
+ is associated with your browser via a cookie. It is not
+ associated in any way with your Zope user account.
+
+ *Logout*: Selecting this menu item will log you out of Zope.
+ Due to the way that the HTTP "basic authentication" protocol
+ works, this may not behave properly with all browsers. If you
+ experience problems logging out using this method, try closing
+ and reopening your browser to log out.
+
+ *Quick Start Links*: Selecting this menu item presents the
+ "QuickStart" page, which contains links to Zope documentation and
+ community resources.
+
+ "The Status Frame":img:3-3:Figures/statusframe.jpg
+
+ Creating Objects
+
+ The Zope Management Interface allows you to create new objects in
+ your Zope instance. To add a new object, select an entry from the
+ pull-down menu in the Workspace labeled "Select type to add...".
+ This pull-down menu is called the *add list*.
+
+ The first kind of object you'll want to add in order to "try out"
+ Zope is a "Folder". To create a Zope Folder object, navigate to
+ the root folder and select *Folder* from the add list. At this
+ point, you'll be taken to an add form that collects information
+ about the new folder, as shown in the figure below.
+
+ "Folder add form.":img:3-4:Figures/addfolder.jpg
+
+ Type "zoo" in the *Id* field, and "Zope Zoo" in the *Title*
+ field. Then click the *Add* button.
+
+ Zope will create a new Folder object in the current folder named
+ *zoo*. You can verify this by noting that there is now a new
+ folder named *zoo* inside the root folder.
+
+ Click on *zoo* to "enter" it. The Workspace frame will switch to
+ the contents view of *zoo* (which is currently an "empty" folder, as
+ it has no sub-objects or contents). Note that the URL of the *zoo* folder is based on the folder's *id*.
+
+ You can create more folders inside
+ your new folder if you wish. For example, create a folder inside
+ the *zoo* folder with an id of *arctic*. Enter the *zoo* folder
+ and choose *Folder* from the pull-down menu. Then type in "arctic"
+ for the folder id, and "Arctic Exhibit" for the title. Now click
+ the *Add* button.
+
+ When you use Zope, you create new objects by following these
+ steps:
+
+ 1. Enter the folder where you want to add a new object.
+
+ 2. Choose the type of object you want to add from the add list.
+
+ 3. Fill out the resulting add form and submit it. As a result,
+ Zope will create a new object in the folder.
+
+ Notice that every Zope object has an *id* that you need to specify
+ in the add form when you create the object. The id is how Zope
+ names objects. Objects also use their ids as a part of their
+ *URL*. The URL of any given Zope object is typically a URL
+ consisting of the folders in which the object lives plus its name.
+ For example, we created a folder named "zoo" in the root folder.
+ If our site were called "mysite.example.com", the new folder's URL
+ would be "http://mysite.example.com/zoo".
+
+ Moving and Renaming Objects
+
+ Most computer systems let you move files around in directories
+ with cut, copy, and paste actions. The ZMI uses a
+ similar system that lets you move objects around in folders by
+ cutting or copying them, and then pasting them to a new location.
+
+ *NOTE: Zope move and rename options require that you have cookies
+ enabled in your browser.*
+
+ To experiment with copy and paste, create a new Folder object in the root
+ folder with an id of *bears*. Then select *bears* by checking the
+ check box just to the left of the folder. Then click the *Cut*
+ button. Cut selects the selected objects from the folder and
+ places them on Zope's "clipboard". The object will *not*,
+ however, disappear from its location until it is pasted somewhere
+ else.
+
+ Now enter the *zoo* folder by clicking on it. Click the
+ *Paste* button to paste the cut object into the *zoo* folder. You
+ should see the *bears* folder appear in its new location. You can
+ verify that the folder has been moved by going to the root folder
+ and confirming that *bears* is no longer visible there.
+
+ Copy works similarly to cut, in that, when you paste copied objects, the
+ original objects are not removed. Select the object(s) you want
+ to copy and click the *Copy* button. Then navigate to another
+ folder and click the *Paste* button.
+
+ You can cut and copy folders that contain other objects and move
+ many objects at one time with a single cut and paste. For
+ example, go to the root folder, and copy the *zoo* folder. Now paste it
+ into the root folder. You will now have two folders inside the
+ root folder: *zoo* and *copy_of_zoo*. If you paste an
+ object into the same folder where you copied it, Zope will change
+ the id of the pasted object. This is a necessary step, as you
+ cannot have two objects with the same id in the same folder.
+
+ To rename the *copy_of_zoo* folder, select the folder by checking
+ the check box to the left of the folder. Then click the *Rename*
+ button. This will take you to the rename form.
+
+ "Renaming an Object":img:3-5:Figures/renamezoo.jpg
+
+ Type in the new id value "zoo2" and click *OK*. Zope ids can consist
+ of letters, numbers, spaces, dashes, underscores, and periods, and they
+ are case-sensitive. Here are some legal Zope ids: *index.html*,
+ *42*, *Lucky13*, and *Snake-Pit*.
+
+ Now your root folder contains *zoo* and *zoo2* folders. Each of
+ these folders contains a *bears* folder. This is because when we
+ made a copy of the *zoo* folder, we also copied the *bears* folder
+ that it contained. Copying an object also copies all of the
+ objects it contains.
+
+ If you want to delete an object, select it and then click the
+ *Delete* button. Unlike cut objects, deleted objects are not
+ placed on the clipboard and cannot be pasted. In the next section,
+ we'll see how we can retrieve deleted objects using Undo.
+
+ Zope will not let you cut, delete, or rename a few particular
+ objects in the root folder. These objects include *Control_Panel*,
+ *browser_id_manager*, and *temp_folder*. These objects are
+ necessary for Zope's operation. It is possible to delete other
+ root objects, such as *index_html*, *session_data_manager*,
+ *standard_html_header*, *standard_html_footer*,
+ *standard_error_message*, and *standard_template.pt*, but it is not
+ recommended to do so unless you have a very good reason.
+
+ Transactions and Undoing Mistakes
+
+ All objects you create in Zope are stored in Zope's "object
+ database". Unlike other web application servers, Zope doesn't
+ store its objects in files on a filesystem. Instead, all Zope
+ objects are stored by default in a single special file on the
+ filesystem named 'Data.fs'. This file is stored in the 'var'
+ directory of your Zope instance. Using an object database rather
+ than storing objects on the file system allows operations to Zope objects to
+ be *transactional*.
+
+ A transactional operation is one in which all changes to a set of
+ objects are committed as a single "batch". In Zope, a single web
+ request initiates a transaction. When the web request is
+ finished, Zope commits the transaction unless an error occurs
+ during the processing of the request. If there is an error, Zope
+ refrains from committing the transaction. Each transaction
+ describes all of the changes that happen in the course of
+ performing a web request.
+
+ Any action in Zope that causes a transaction can be undone via
+ the *Undo* tab. You can recover from mistakes by undoing the
+ transaction that represents the mistake. This includes undo actions
+ themselves, which can also be undone to restore an object to its state
+ before the undo action.
+
+ Select the *zoo* folder that we created earlier and click
+ *Delete*. The folder disappears. You can get it back by undoing the
+ delete action.
+
+ Click the *Undo* tab, as shown in the figure below.
+
+ "The Undo view.":img:3-6:Figures/delzoo.jpg
+
+ Transactions are named after the Zope action, or "method",
+ that initiated them. In this case, the initiating
+ method was one named "/manage_delObjects", which is the name of the
+ Zope action that deletes Zope objects.
+
+ Select the first transaction labeled */manage_delObjects*, and
+ click the *Undo* button at the bottom of the form. Doing so instructs
+ Zope to undo the last transaction. You can verify that the task
+ has been completed by visiting the root folder to confirm that
+ the *zoo* folder has returned. If you use the "Back" button
+ to revisit the root folder, you may need to refresh your
+ browser to see the proper results. To see the effect in the *Navigator*
+ pane, click the "Refresh" link within the pane.
+
+ You may "undo an undo" action, or "redo" the action, and you
+ can undo and redo actions as many times as you like. When you perform a
+ "redo", Zope inserts a transaction into the undo log describing
+ the redo action.
+
+ The Undo tab is available on most Zope objects. When viewing the
+ Undo tab of a particular object, the list of undoable transactions
+ is filtered down to the transactions that have recently affected
+ the current object and its sub-objects.
+
+ Undo Details and Gotchas
+
+ You cannot undo a transaction upon which a later transaction depends.
+ For example, if you paste an object into a folder, and then
+ delete an object in the same folder, pasting the first object cannot
+ be undone, as both transactions affect the contents of a single object:
+ the folder. The solution is to undo both transactions. You can
+ undo more than one transaction at a time by selecting multiple
+ transactions on the *Undo* tab and then clicking *Undo*.
+
+ Only changes to objects stored in Zope's object database can be
+ undone. If you have integrated data into a relational database
+ server, such as Oracle or MySQL (as discussed in the chapter entitled
+ "Relational Database Connectivity"), changes to data stored there
+ cannot be undone.
+
+ Reviewing Change History
+
+ The Undo tab will provide you with enough information to know that
+ a change has occurred. However, it will not tell you much about
+ the effect of the transaction on the objects that were changed
+ during the transaction. "Presentation" and "logic" objects, like
+ DTML Methods, DTML Documents, Zope Page Templates, and Script
+ (Python) objects, support *History* for this purpose. If you know
+ a transaction has affected one of these objects, you can go to
+ that object's *History* view and look at the previous states of
+ the object, as shown in the figure below.
+
+ "The History View":img:3-7:Figures/history.png
+
+ The *History* view of an object supports the comparison of revisions,
+ allowing you to track their changes over time. You may select two
+ revisions from an object's History and compare them to one
+ another. To perform a comparison between two object revisions,
+ select two revisions using the checkboxes next to the transaction
+ identifiers, and click the *Compare* button.
+
+ The resulting comparison format is often called a *diff*, as it
+ emphasizes the differences in content between the versions. The
+ diff format shows you the lines that have been added to the new
+ document (via a plus), which lines have been subtracted from the
+ old document (via a minus), and which lines have been replaced or
+ changed (via an exclamation point).
+
+ "Comparing Revisions Via The History View":img:3-8:Figures/histcompare.png
+
+ To revert to an older object revision, click the checkbox next to
+ the transaction identifier, then click the *Copy to present*
+ button.
+
+ Importing and Exporting Objects
+
+ You can move objects from one Zope system to another using
+ *export* and *import*. You can export all types of Zope objects,
+ with the possible exception of External Method objects,
+ to an *export file*. This file can then be imported into any
+ other Zope system.
+
+ You can think of exporting an object as cloning a piece of your
+ Zope system into a separate file, which you can then move between
+ machines. You can take this file and graft the clone onto any
+ other Zope server.
+
+ Suppose you have a folder for home work that you want to export
+ from your school's Zope server, and take it home with you to work on in
+ your home Zope server. You'd create a folder in your root folder called
+ "homeWork". After creating the folder, you'd click the checkbox next to
+ the *homeWork* folder you'd just created, and then click the
+ *Import/Export* button. You would then be working in the
+ Import/Export folder view, as shown in the figure below.
+
+ "Exporting homeWork.zexp":img:3-9:Figures/export.jpg
+
+ There are two sections to this screen: the upper half is the
+ *export* section, and the lower half is the *import* section. To export
+ an object from this screen, type the id of the object into the
+ first form element, *Export object id*. In our case, Zope has already
+ filled this field in for us, since we had selected the *homeWork*
+ folder on the last screen.
+
+ The next form option lets you choose between downloading the
+ export file to your computer or leaving it on the server. If you
+ select *Download to local machine*, and click the *Export* button,
+ your web browser will prompt you to download the export file. If
+ you select *Save to file on server*, then Zope will save the file
+ on the same machine on which Zope is running, and you must fetch
+ the file from that location yourself. The export file will be
+ written to Zope's *var* directory on its server's file system. By default,
+ export files use the file extension *.zexp*.
+
+ In general, it's easier to download the export file to your local
+ machine. It may be more convenient to save the file to the
+ server instead if you are on a slow connection and the
+ export file is very large, or if you are just trying to move the
+ exported object to another Zope instance on the same server.
+
+ The final export form element is the *XML format?* checkbox.
+ This option exports the object in the *eXtensible Markup
+ Language* (XML) format, as opposed to exporting the file in
+ Zope's default binary format. XML format exports are much
+ larger but are (mostly) human-readable. Currently, the only tool
+ that understands this XML format is Zope itself, but the future may
+ bring along other tools that can understand Zope's XML format.
+ In general, you should leave this box unchecked, unless you're
+ curious about what the XML export format looks like and want to
+ examine it by hand.
+
+ While you're viewing the export form for *homeWork*, ensure that
+ "download to local machine" is selected, "XML format?" is *not*
+ selected, and then click the *Export* button. Your browser will
+ present a file save dialog. Save the file, which will be named
+ named *homeWork.zexp*, to a temporary location on your local computer.
+
+ Suppose that you've later gone home and wanted to import the file into
+ your home Zope server. First, you would copy the exported file into
+ Zope's *import* directory on your Zope server's file system, and then
+ import the file via the ZMI into your home Zope instance. Here is an
+ example of a Zope import: we are copying the *homeWork.zexp* file, which
+ is in a directory named '/tmp' on the local computer, to a remote ("home")
+ computer running Zope using the *scp* facility in Linux. We copy the
+ *.zexp* file into our Zope directory's 'import' directory. In this
+ example, the Zope installation directory on the remote computer is named
+ '/home/chrism/sandboxes/ZBExample'::
+
+ chrism at saints:/tmp$ ls -al homeWork.zexp
+ -rw-r--r-- 1 chrism chrism 182 Jul 13 15:44 homeWork.zexp
+ chrism at saints:/tmp$ scp homeWork.zexp saints.homeunix.com:/home/chrism/sandboxes/ZBExample/import
+ chrism at saints.homeunix.com's password:
+ homeWork.zexp 100% |*****************************| 182 00:00
+ chrism at saints:/tmp$
+
+ In the above example, the export file 'homeWork.zexp' was copied from
+ the local computer's '/tmp' directory to the remote computer's
+ '/home/chrism/sandboxes/ZBExample/import/' directory.
+ Your local directory and your Zope's installation directory will
+ be different. For the purpose of this example, you'd copy the export file
+ you downloaded to your Zope installation's "import" directory
+ using whatever facility you're most comfortable with (you needn't
+ use scp).
+
+ Now, go back to your Zope's ZMI. Create a Folder
+ named 'import_example'. Visit the newly-created 'import_example'
+ folder by clicking on it in the ZMI. Then click
+ the *Import/Export* button from within the 'import_example' folder, and
+ scroll to the bottom of the Workspace frame. Note that Zope gives
+ you the option to either *Take ownership of imported objects* or
+ *Retain existing ownership information*. Ownership will be
+ discussed more in the chapter entitled "Users and Security". For
+ now, just leave the *Take ownership of imported objects* option
+ selected, enter the name of the export file ('homeWork.zexp')
+ in the *Import file name* field, and click *Import*.
+
+ "Importing homeWork.zexp":img:3-10:Figures/import.jpg
+
+ You now have a new object in the 'import_example' folder named
+ 'homeWork'. Note that Zope informs you of the success of the import
+ operation with a status message.
+
+ "Success Importing homeWork.zexp":img:3-11:Figures/importsuccess.jpg
+
+ There are a few caveats to importing and exporting: in order to
+ perform a successful import of a Zope export file, you need to
+ ensure that both the importing and exporting Zope instances have the same
+ *Products* installed. If an import fails, it's likely that you
+ don't have the same Products installed in your importing Zope as the
+ Products installed in the Zope from whence the export file came.
+ Our example above works because we are exporting a Folder object, which
+ is a common, core object type for all Zopes. If you have trouble
+ importing any given exported Zope file, check with the distributor of the exported file to see what Products are necessary for proper import.
+
+ Note that you cannot import an object into a folder that has an
+ existing object with the same 'id' as an exported file. Therefore, when
+ you import an export file, you need to ensure that it does not want to
+ install an object that has the same name as an existing object in the folder
+ in which you wish to import it. In our example above, in order to
+ bring your homework back to school, you'd either need to import
+ it into a folder that doesn't already have an existing *homeWork* folder in
+ it, or you'd need to delete the existing *homeWork* folder before
+ importing the new one.
+
+ Using Object Properties
+
+ *Properties* are ways of associating information with many objects in
+ Zope, including folders. For example, many Zope content objects have a
+ content type property, and others contain metadata about the object, such as
+ its author, title, or status.
+
+ Properties can provide more complex data than strings, such as
+ numbers, lists, and other data structures. All properties are
+ managed via the *Properties* view. Click on the *Properties* tab
+ of the "root" object, and you will be taken to the properties
+ management view, as seen in the figure below.
+
+ "The Properties Management View":img:3-12:Figures/rootproperties.jpg
+
+ A property consists of a name, a value, and a type. A property's
+ type defines what kind of value or values it can have.
+
+ In the figure above, you can see that the folder has a single
+ string property *title*, which has the value 'Zope'. You may
+ change any predefined property by changing its value in the Value
+ box, and then clicking *Save Changes*. You may add additional
+ properties to an object by entering a name, value, and type into
+ the bottom-most field in the Properties view.
+
+ Zope supports a number of property types and each type is suited to a
+ specific task. This list gives a brief overview of the kinds of
+ properties you can create from the management interface:
+
+ string -- A string is a sequence of characters of arbitrary length.
+ Strings are the most basic and useful type of property in Zope.
+
+ int -- An int property is an integer, which can be any positive or
+ negative number that is not a fraction. An int is guaranteed to be
+ at least 32 bits long.
+
+ long -- A long is an integer that has no range limitation.
+
+ float -- A float holds a floating point, or decimal number.
+ Monetary values, for example, often use floats.
+
+ lines -- A lines property is a sequence of strings.
+
+ tokens -- A tokens property is a list of words separated by spaces.
+
+ text -- A text property is just like a string property, except that
+ Zope normalizes the line ending characters (different browsers use
+ different line ending conventions).
+
+ selection -- A selection property is special, in that it is used to render
+ an HTML single selection input widget.
+
+ multiple selection -- A multiple selection property is special, in that it
+ is used to render an HTML multiple selection form input widget.
+
+ Properties are very useful tools for tagging your Zope objects
+ with bits of metadata. Properties are supported by most
+ Zope objects and are often referenced by "dynamic" Zope objects,
+ such as "scripts" and "methods" (which we have not yet discussed)
+ for purposes of data display.
+
+ Using the Help System
+
+ Zope has a built-in help system: every management screen has a help
+ button in its upper right-hand corner. This button launches another
+ browser window that exposes the Zope Help System.
+
+ To see the help system, go to the root folder and click the *Help*
+ link in upper right-hand corner of the Workspace frame.
+
+ "The Help System.":img:3-13:Figures/2-7.png
+
+ The help system has an organization similar to the two primary
+ panes of the Zope management interface: it has one frame for
+ navigation, and one frame for displaying the contents of the
+ help system related to the current management screen.
+
+ Browsing and Searching Help
+
+ Normally you would use the help system to get help on a specific
+ topic. However, if you are curious, you can browse through its
+ content.
+
+ The help system lets you browse all of the help topics in the
+ *Contents* tab of the left-hand help frame, in which you can expand and
+ collapse help topics. To view a help topic in the right frame,
+ click on its name in the left frame. By default, no topics are
+ expanded.
+
+ Most help pertaining to Zope itself is located in the *Zope Help*
+ folder. Click on the "plus" symbol next to the words *Zope Help* in
+ the *Contents* tab of the left frame. The frame will expand to
+ show help topics (currently, in an apparently random and somewhat unhelpful
+ order) and additional, related help categories, including
+ *API Reference*, *DTML Reference*, and *ZPT Reference*. These
+ subcategories contain help on scripting Zope, which is explained
+ further in the chapters named "Dynamic Content With
+ DTML":DTML.stx, "Using Zope Page Templates":ZPT.stx, and "Advanced
+ Zope Scripting":ScriptingZope.stx.
+
+ When you install third-party Zope components, they may also include
+ their own help content. Each installed component has its own help folder.
+
+ You may search for content in the help system by clicking on the
+ Search tab in the left frame, and entering one or more search
+ terms. For example, to find all of the help topics that mention
+ folder objects, type "folder" into the search field and click "Search".
+ This will return a number of help topic links, most of
+ which should pertain to the word "folder".
+
+ Logging Out
+
+ You may choose *Logout* from the Status Frame drop-down box to
+ attempt to log out of Zope. Doing so will cause your browser to
+ "pop up" an authentication dialog. Due to the way most web
+ browsers work, you may actually need to click on the
+ "OK" button with an *incorrect* user name and password in
+ the authentication dialog in order to effectively log out of the
+ ZMI. If you do not do so, you may find even
+ after selecting "Logout" that you are still logged in. This is
+ an intrinsic limitation of the HTTP Basic Authentication protocol,
+ which Zope's stock user folder employs. Alternately, you may
+ close and reopen your browser to log out of Zope.
More information about the Checkins
mailing list