[Grok-dev] Re: Benefits of Grok -- please contribute
Martijn Faassen
faassen at startifact.com
Tue May 15 15:56:28 EDT 2007
Hey,
Martin Aspeli wrote:
> Martijn Faassen wrote:
>
>> That I think Zope 3 and Grok are less magic is probably partially due
>> to perspective - I'm used to our way of doing things. That said, I do
>> think Zope 3's explicitness and clearcut component and configuration
>> systems help in reducing magic.
>
> It's also interesting to note that most of the majik voodoo in Zope
> (typically, generating classes) happens in the bit that Grok is trying
> to displace - ZCML handlers.
Though we can't avoid majik voodoo in Grok entirely. I think we generate
a class in one or two places...
>>> 5 What might be considered drawbacks with Grok compared to
>>> "competing" frameworks?
>>
>> Relational object mappings have advantages in advanced query
>> construction and also relational databases are more widely understood.
>> Grok doesn't support this yet.
>
> I would strongly advocate some deep thinking around how Grok
> applications may want to interact with SQLAlchemy.
Oh, it's been discussed from the very first Grok sprint, so it's
definitely something we want to do. I know Christian was experimenting
with mapping Zope 3 schemas to SQLAlchemy, but don't know how far that
work got along.
> I think I understand the connection management side pretty well.
>
> ore.alchemist has some interesting abstractions in terms of mapping Zope
> schemata to ORM schemata, and thus allowing you to use formlib.
Ah, cool. I saw Christian talk to Kapil a while back on IRC so it looks
like he looked into that too.
> This isn't so much about "you could do it" - there are an infinite
> number of ways you could do it. It's about promoting some patterns, that
> have been properly thought through and are known to work with the other
> patterns people use in Grok.
Exactly. That's what Grok should be about.
> For example, let's say we had a catalog-like abstraction to search
> metadata using an RDBMS. That'd allow very powerful query logic, even if
> the real objects live in the ZODB.
I think this one should be out of scope for a first cut, but something
like that would of course be very cool.
> Or, standard ways of registering traversal logic and views for
> ORM-mapped things.
This story should be in the first cut, I think, along with SQLAlchemy
schema to Zope 3 schema mapping (and patterns for formlib use).
> At the very least, there should be a well-supported (not necessarily in
> the core) way of doing transaction integration. My collective.lead does
> that for Zope 2, and I imagine the Zope 3 version isn't much different
> (if at all?). It's very simple and low-level, though: I think Grok would
> need to support slightly higher level abstractions.
Can't we use one of the SQLAlchemy integration packages for Zope 3?
There's two around. Would neither of them be suitable? I was hoping Grok
could just use one of them.
Regards,
Martijn
More information about the Grok-dev
mailing list