[Seaside] rails niceties equivalents?

Julian Fitzell jfitzell at gmail.com
Sun May 17 01:49:41 UTC 2009


On Sat, May 16, 2009 at 10:06 AM, Philippe Marschall
<philippe.marschall at gmail.com> wrote:
> 2009/5/15 Eagle Offshore <eagleoffshore at mac.com>:
>> The one thing that is consistently requested (and I definitely need) is ways
>> to do RESTful dispatching.
>
> Seaside is not a RESTful framework. If you need that look somewhere
> else. There are certain ways to emulate certain things but that's
> about it.
>
>> The usual reply is that it is done in Pier and I
>> could download Pier and look at that.  I've done this and browsed code for a
>> few hours, and still come up empty about how to do this in generic Seaside.
>>  I think the core maintainers have to do this - only they have the
>> knowledge.
>
> The usual reply is look at #initialRequest: #updateUrl: and
> #addToPath: they actually have comments. Look at WABrowser for
> concrete example.

I don't think it's that simple and I don't think we should discourage
people who want to work on this. It is true that nobody has come up
with a good paradigm for doing non-Session REST stuff in Seaside and
also true that we haven't even come close to figuring out a good way
to blend the two but I would suggest that in a huge number of cases
you don't need both within the same "application" anyway.

Seaside has always been capable of supporting other paradigms, though
this should be more obvious again with the reorganization in 2.9. At
its core, Seaside is a request and response dispatching engine. So
while you are right that Seaside is not *currently* a RESTful
framework, it wouldn't take much effort to make it support both a
Rails-type model and the existing Session model if only someone knew
what they wanted a request handler for the former to look like. And I
think being able to easily develop stateless rails-style apps with
full REST URLs but using the Canvas API would be a huge win for many
people.

How best to support semi-RESTful URLs while still maintaining full
session state and the ability to write complex control flows is still
a matter of much debate and a prime area for further research and
experimentation. But that doesn't mean someone can't move to support
the two separately in the meantime.

Julian


More information about the seaside mailing list