[Zope] detailed record display...

Joel Burton joel@joelburton.com
Thu, 14 Mar 2002 09:03:33 -0500 (EST)


On Wed, 13 Mar 2002, Alexander Batzios wrote:

> Hello.
>
> First of all I would like to thank everyone who replied to my previous
> question. Thanks for pointing out that it was called batching and was
> in dtml-in documentation. I did manage to split the results.
>
> However, I still can't figure out how to make the record details
> appear. As I told you, I want the list of the results to be clickable
> in a field (e.g. record field) and when a user clicks on that, the
> record details to appear.
>
> I've created an SQL method called sql_show_details and a Z search
> Interface called show_record_details. I have put "Rec" as the
> arguments in the sql_show_details method. Now, when I display the
> results I put the following entry in the results display form:
>
> <td><a href="show_record_details"><dtml-var Rec null=""></a></td>
>
> What I was hoping to achieve, is call the show_record_details
> interface with the Rec dtml-var as a parameter. The
> show_record_details interface calls the sql_show_details method to get
> the record. However, it seems that record 0 is returned all the time.
> I assume that it doesn't actually pass the Rec parameter for that
> specific row in the table. Is there a way I can do that? I tried
> experimenting with various alteration but nothing. In the docs, I've
> found <dtml-call> which calls a method passing all arguments, but it
> doesn't work from href.

If "Rec" is the field in your database that is the name of the record
(company name or person name or whatever), and "recid" is the
primary key of your table (used in the WHERE clause of the ZSQLMethod),
you want something like:

<a href="show_record_details?recid=&dtml-recid;"><dtml-var Rec></a>

To "pass a parameter" on the web, you have to include it in the HTML
request.

-- 

Joel BURTON  |  joel@joelburton.com  |  joelburton.com  |  aim: wjoelburton
Independent Knowledge Management Consultant