[Zope3-dev] Brainstorming about browser pages
Roger Ineichen
dev at projekt01.ch
Sat Feb 18 06:30:22 EST 2006
Hi Steve
[...]
>
> We'll be moving soon to having minimal ZCML configuration for pages,
> just pointing at the module and class to use for a set pages. Within
> the class there will be methods decorated with @page('name'), and
> attributes for page templates. So, a typical view class in Launchpad
> will look like:
>
> <browser:register-pages
> module="canonical.launchpad.browser.distribution"
> classes="DistributionView SpecialOtherDistributionView"
> />
>
> class DistributionView(LaunchpadView):
>
> def initialize(self):
> # here, set up data before the page is rendered,
> # do redirections and avoid the page being rendered,
> # and process form POSTs.
>
> foo_page = page('foo.html', LaunchpadTemplate('foo.pt'))
>
> bar_template = LaunchpadTemplate('bar.bt')
>
> @page('bar.html')
> def render_bar_page(self):
> # do stuff, maybe using self.bar_template
>
>
> The advantage of all this is that you need to look in just
> one place to
> understand a view class. You don't need to look in both the ZCML and
> the Python code, just the Python code. The ZCML becomes simpler, and
> more focused on glueing pieces of Python code together, and less about
> what is to be displayed at what URLs.
Let my say somthing about that.
I like it and I think it's a good way for simplifie view registration
for a well defined project but not a fremawork where has to offer
a more open API for views.
Why not useable in frameworks;
because this means you have to use PageTemplates for such a API.
But Im OK with this as long we don't propagate this as a reusable
concept for the zope3 core or 3rd party applications.
I like it more to see real Pyhton view API's where can be used
with different templating systems in the future.
btw, I think this isn't really possible since it exist two
base templating pattern (push and pull). But a python view
class can always offer a API with the right set of methods and
permissions. (MVC)
If we think about MVC then I would say that such a pattern
isn't the right way to mix it with PageTemplate implementation.
But that's another part.
But I agree with you Steve, I think its a good concept if you
use it in project which uses PageTemplates and doesn't need to
offer a generic API.
Regards
Roger Ineichen
>
> --
> Steve Alexander
>
> _______________________________________________
> Zope3-dev mailing list
> Zope3-dev at zope.org
> Unsub:
> http://mail.zope.org/mailman/options/zope3-dev/dev%40projekt01.ch
>
>
More information about the Zope3-dev
mailing list