make sure the tutorial matches grokproject behavior exactly

Bug #172797 reported by Martijn Faassen on 2007-11-29
4
Affects Status Importance Assigned to Milestone
grok
High
Brandon Rhodes

Bug Description

The Grok tutorial has an introduction about how to install Grok. Unfortunately in the mean time grokproject has undergone some
evolution and the tutorial is evidently slightly out of date. We need to fix this.

BradAllen (brad-allendev) wrote :

During the Grok sprint at PyCon, some of us went through the tutorial, carefully testing along the way, and made some corrections. These corrections should bring the tutorial up to date, and improve the grammar in some places.

Since we did not have SVN commit privileges, I sent the changes Brandon Rhodes an SVN diff for doc/tutorial.txt and doc/about.txt, and have also attached the SVN diff here.

Vincent Fretin (vincent-fretin) wrote :

I re-read the tutorial when grok 0.12 was released and I found some things to correct/ameliorate.
Grokproject 0.7 doesn't ask for the initial module name app.py anymore. The tutorial should be adapted.
I found two paragraphs where there is a mention to it:

You will be asked a number of questions now. First you need to supply
the name of the initial module that your package will contain. We'll
stick with the default ``app.py``:

In it is a Python package directory called ``sample`` with
the ``app.py`` file that grokproject said it would create.

In groktut/an_empty_grok_project/src/sample/configure.zcml add:
<includeDependencies package="." />

In the "Unassociated templates" sidebar, problem of rest syntax:
Since in the given ``app.py``e we have no more class using it, the
  ``bye.pt`` template will have become *unassociated**.
please replace by:
Since in the given ``app.py`` we have no more class using it, the
  ``bye.pt`` template will have become **unassociated**.

And always in this sidebar, it's mentionned that grok will crash if it found an unassociated template. It's false, it's a UserWarning in grok 0.12 now.

And I propose to ameliorate this:
In the "Automatic forms" sidebar, replace XXX by a link to http://grok.zope.org/documentation/how-to/automatic-form-generation

In "The rules of persistence", maybe you can say you can use:
Instead to add:
self.context._p_changed = True
You can replace
self.list = []
by:
self.list = PersistentList()
and add the following import:
from persistent.list import PersistentList

todd (todd-infrae) on 2008-12-10
Changed in grok:
assignee: nobody → faassen
milestone: none → 1.0
Martijn Faassen (faassen) wrote :

I'm re-assigning this to Brandon as he's the one working on grokproject right now. Brandon, could you go through Michael's changes to the tutorial to confirm whether they match the behavior?

Changed in grok:
assignee: faassen → brandon-rhodes
importance: Undecided → High
status: New → Confirmed
Michael Haubenwallner (d2m) wrote :

i wonder if we should not simply use the 'paster create -t' formula to describe installation
and its output.

Michael Haubenwallner (d2m) wrote :

The current tutorial describes the Grok installation process

Changed in grok:
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers