[Seaside] Rolling with Ruby on Rails vs. Seaside
yanni at rogers.com
Sat Jan 29 04:58:18 CET 2005
Benjamin Pollack wrote:
> I haven't used Mewa in anything serious, so I apologize if this is
> incorrect, but my impression was that Mewa just tells the controller
> and view how to validate its data. The model still requires its own
> validation routines. I end up having to code everything twice if I
> honestly believe in an M/VC architecture.
I've only read the docs for Mewa, but the description above
sounds to me like it's doing the right thing - i.e. providing
the hook for validation to be called. IME, beyond CRUD apps,
you cannot specify *all* the validation criteria in meta data
associated with each inst. var.
If you can specify everything there, and you want to avoid
coding twice, I see two options:
1. generate the code for Mewa by walking the meta data, or
2. insert a framework to use the meta data for validation
and have it called in the hook provided by Mewa.
> ... But my original
> point--that for simple and relatively trivial CRUD apps, Rails is
> adequate and potentially faster--I still think is valid. I don't think
> it's coincidence that the Rails demo applications are task lists and
> address books, whereas Seaside's demo application is a full-fledged
> web store. Rails does well when the domain is limited and simple.
> Seaside does well when the domain is extendable and complex. I'm okay
> with that split.
Here's my 2 cents. I tried to build a declarative framework
to specify a mapping between models and the UI components.
(I posted a link a few months ago.) I haven't entirely given
up on the concept, but I am now in the process of expunging
it from my code. It turns out to be far easier to code directly
in Seaside and ST (not unexpectedly). My thinking was that I
could take the UI spec. and match it up with an alternative
UI "widget set" and things would still work. But the difference
in clarity and coding effort calls into question the framework's
So much for that tangent. I built a SqueakPeople workalike as an
example of a "simple" app. to test my frameworks. The object
model fits on a single page (letter size). However, my attempt
to squeeze it into a CRUD-like framework was not successful.
Maybe I didn't build the right framework. I guess my point is
that CRUD apps have a limited range, and it might be a smaller
range than you might expect.
More information about the Seaside