[Nitro] Og problem...

John Lloyd-Jones john.lloydjones at gmail.com
Tue Oct 11 17:05:23 EDT 2005

I have reported similar issues some time back. I created an an object graph
(that's what OG stands for, right) and discovered that OG does not handle
inheritance well. My case involved a Party that 'has_many' Address. From
Party, I derived a Person, and from Person a PersonalCustomer, expecting the
latter to handle the Addresses. In the end, with help from Aleksi, I put in
by hand some missing methods to get the appropriate oids and got it to work.
But it was a hack -- and Aleksi suggested it only as an ugly hack. Since
then, I have been hoping for a fix, but so far it still seems to be a
problem. If George and his devs can get this fixed, it will move Nitro/Og
into a league apart. Rails is OK for relatively simple object models, but
just doesn't cut it for most of the applications I deal with. Og has all the
promise, but alas, still doesn't deliver.

On 10/6/05, Emmanuel Piperakis <epiperak at softlab.ece.ntua.gr> wrote:
> Hi everyone,
> I have discovered a problem with inheritance in Og. (I am not sure if it
> is a problem or not).
> class Report
> property :a, String
> has_many :lines
> end
> class Subreport < Report
> property :b, String
> end
> class Line
> property :c, String
> belongs_to :report
> end
> The problem is that I would expect:
> 1) Subreport to inherit the has_many, from Report, therefore report.lines
> would exist (which it does not)
> 2) Line has a report_oid (as expected) and line.report returns the report.
> I would have a way to find the subreport from line directly. I know it
> does not sound easy, but is there a way? (at the moment I have to find the
> Subreport I am interested in and the query all the Lines with report_oid =
> to the subreports' oid. This solution is not so elegant, and actually not
> correct: eg in the case where I have Subreport_a and Subreport_b, then the
> line.report_oid would end up having same oids and a simple query like I
> mentioned before will not work). What I suggets is that Og could create
> line.subreport_a_oid and line.subreport_b_oid automatically for all the
> subclasses of report. How does that sound?
> Thanx :-)
> Emmanouil Piperakis (epiperak at cs.ntua.gr)
> {To explore is Human, to Create is Devine,
> To teach is Primal, to Rule is Sin}
> _______________________________________________
> Nitro-general mailing list
> Nitro-general at rubyforge.org
> http://rubyforge.org/mailman/listinfo/nitro-general
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://rubyforge.org/pipermail/nitro-general/attachments/20051011/e2ac1b29/attachment.html 

More information about the Nitro-general mailing list