2012/8/31 Amiramix <
li...@gjunka.com>:
> Andreas, many thanks for your answers. Yes, we are looking at the system
> from different perspectives so I would love to clarify if I understood your
> point properly. For the sake of an example say that the page looks like
> this:
>
> section header-copy-1 (some header + some copy)
> A dynamic table
> section header-copy-2 (another header + another copy)
> A dynamic graph
OK
> I would like to generate the table and the graph using custom modules (say
> the data is coming from an external server which I need to consume and
> process).
Sounds right.
> According to your description I can create two page resources for section
> header-copy-1 and header-copy-2 using the web GUI and then one template to
> layout both sections, the table and the graph on a web page presented to the
> user. If I edit either page resource (header-copy-1 or header-copy-2) then
> the web page will be updated automatically when the template pulls them from
> the database next time the web page is requested. Is my thinking correct?
Yes (but there's room for improvements, in case you run on 0.9-dev,
which I'll present further down)
> If yes, then is there any easy way of referencing a particular page resource
> created using the web GUI in a template? I understand I could use m.rsc[id]
> but the id is not shown by the web GUI (there is an integer in the url and a
> unique name assigned in the GUI but I am not sure if either can be reliably
> used to reference a page resource).
The number you see in the url, is the unique id for the resource, and
can be used reliably.
But there is a better way. By giving the resource a unique name, you
can then reference that
name in your templates (and as such, replace which resource is being
used at a later time by
moving/replacing the resource with that name).
To get the resource of a given name in your template, use:
m.rsc.my_name.some_property
As mentioned earlier, if you're on 0.9-dev, you can stick with a
single resource (page) for all sections
of your page. Marc recently added support for having (optionally
named) sections to a resource.
So, that way you can name your sections and pull your corresponding
section from the resource
in the right place in the template.
On 0.8, you're probably best of using a set of resources as you suggested.
//Andreas
Ps.
If you're new to modules (and models) I'd recommend a quick glance
introducing those topics in my "Writing your own Zotonic module"
series:
http://blog.astekk.se/en/by_keyword/318/zotonic
It's in Part IV that models are introduced, and things begin to be a
bit more interesting. Unfortunately I've only written four parts... to
be continued (any year now).