On Oct 13, 2010, at 14:46 , David Masover wrote:


> 
>> The deal-breaker came when I
>> found it was apparently impossible to emit HAML *from the controller* and
>> have it processed.
> 
> I'm pretty sure that's not true, though it's probably a bad idea and the code 
> would likely be ugly.

It might be possible, but I spent three or four hours trying, and failed. More about this in a following paragraph.

>  I certainly don't see how abandoning the idea of 
> separating logic from presentation wholesale is better.

Neither did the people on the Sequel list. But I should say that I didn't abandon separating logic from presentation. It was my MODEL that ended up having to handle most of the presentation that kept climbing out of Haml. 

>> It's a program for a pharmaceutical company to track their products,
>> processing, and inventory. My PostgreSQL schema uses a custom data type
>> ('percentage' which is a numeric(5,2) that cannot be set above 100.00 or
>> below 0.00),
> 
> Huh. DataMapper does support custom, user-defined types, though I'm not sure 
> how easy it is to do that with an existing adapter. (To give you an idea, 
> there is currently a working DataMapper adapter for Google App Engine.)

I found all kinds of indications that even ActiveRecord *could* do what I wanted. But in the end, whether or not something is *possible* is completely irrelevant in the face of "can *I* make it do that in a reasonable amount of time?" 

IIRC, DataMapper and Sequel both seemed to have fairly similar capabilities based on various people's descriptions, and I think both of them were recommended to me a couple of times. Sequel's documentation kicks titanic ass, though: far and away the best I've ever gotten with any Ruby-related thingamabob. Well written and well organized RDoc-y parts, AND extensive walk-throughs, examples, and discussions, all installed right on my system, plus a developer whom I've seen easily answer questions that made my eyes cross. 

HAML's documentation *looked* really good at first, but that's because it's good at telling you what it thinks you should know. It was completely silent on how to make it process the contents of a variable as HAML, or to otherwise get it inserted *before* interpretation. Nor could whichever list I asked on provide a workable answer. (feature I cannot find or use) == !(feature)

>> You'd think so. I need it because I *am* using a reverse proxy. However,
>> the redirect _attaches the port number_,
> 
> Yeah, it shouldn't do that. Either Rails doesn't, or nginx does strip that 
> (unlikely), because I've hosted production Rails apps in exactly this nvironment -- nginx listening on example.com, forwarding to multiple Mongrels 
> on various ports, not necessarily on the same machine.
> 
> So, probably somewhere in Ramaze.

I think it's probably in Innate, but I'm not really clear on how Innate and Ramaze are related. Alas, Ramaze's docs are rather scattered and not entirely up to date.