[Seaside] Newbie questions
Avi Bryant
avi at beta4.com
Mon Feb 23 21:49:25 CET 2004
On Feb 23, 2004, at 9:59 AM, Paul Mateescu wrote:
> However, I feel I cannot go very far with these. I mean, I *could* go,
> but only if I trace the execution of the code, step by step (no class
> comments - sigh - ), and that would take me very much time. Can anyone
> point me to any other sources of learning?
I sometimes post information about Seaside on my blog - you can find
just the relevant postings here:
http://www.cincomsmalltalk.com/userblogs/avi/blogView?
searchCategory=continuations
Also, I did start a very rough sketch of some "minimalist
documentation" for Seaside - you can find it at
http://beta4.com/~avi/mfa-docs/seaside/index.html
Unfortunately, there's not much there yet. I'll happily accept
contributions.
> How can I do this? I cannot use call-answer because I will then impose
> a very strict way of using the intranet and I would require the users
> to always go back. This would go against the way the intranet is made
> now, that is allowing the users to browse the information freely in as
> many ways as possible (of course, there are links to go back to the
> main page or to some sections).
Yup, makes sense. This is how I would do what you describe:
- Set up your top page to have a 'main' instance variable that is a
WAStateHolder (so that its state backtracks properly). This will
contain the currently active component. Along with whatever banner,
nav, etc that it renders, it should render the current contents of
main:
html render: main contents
- Add a #show: method to the top page that sets the contents of 'main':
show: aComponent
main contents: aComponent
- Make sure that everyone can always get at the top page; one way of
doing this would be to store it in the session.
- When the user clicks on (eg) 'customers', instead of doing "self
call: someComponent", use "topPage show: someComponent'
> 3. I assume that if I continuously use call:s and no answers, I will
> end up with some sort of overflow somewhere in the framework. Is it
> correct?
Well, it won't overflow exactly, but you will end up with very long
linked lists of components, and so rendering will get progressively
slower since it has to iterate over the entire list each time.
> 4. WAView has dropped out from the framework? It was mentioned in this
> mailing list, for instance in
> http://lists.squeakfoundation.org/pipermail/seaside/2002-November/
> 000855.html
> However, I did not find a class with that name.
There is no WAView class currently. The distinction between view and
component tended to be a confusing one for people.
> Sorry for the rather long message. I will share a last thought:
> although Seaside seems like the best framework I have ever seen, the
> lack of documentation makes me wonder if I will ever be able to use
> all its features in a decent way.
Yes, this is a known bug :). I have an unfortunate bias towards
improving the code at the expense of the documentation, Julian is
typically busy with other stuff these days, and nobody else has stepped
forward to save us by writing beautiful docs yet. But I am always
happy to answer questions on this mailing list, and it's something that
we recognize as a problem and are working on, if slowly.
I'll also point out that if you're doing heavy work with Seaside, I'm
available to provide support, training, or development work (in your
case this would likely need to be remotely). I always enjoy doing
Seaside work instead of other stuff, and so give it a high priority...
;)
> I haven't even begun to think about cookies, authentication etc. But
> anyway, great great work!
Thanks!
Avi
More information about the Seaside
mailing list