Pastie now auto-senses if line-wrap is a bad or good idea. Feedback?
## mark a section (Learn more)
lets say Thing has_many :parts, and a Part includes a code and a color --- Scenario (not sql): Thing.find all where (parts.code = 1 AND parts.color = 'red') AND (parts.code = 2 AND parts.color = 'green') sql: SELECT things.id AS t0_r0, parts.id AS t1_r0, parts.thing_id AS t1_r1, parts.code AS t1_r2, parts.color AS t1_r3 FROM things LEFT OUTER JOIN parts ON parts.thing_id = things.id WHERE ((parts.code = 2 AND parts.color = 'green') AND things.id IN (SELECT things.id FROM things LEFT OUTER JOIN parts ON parts.thing_id = things.id WHERE (parts.code = 1 AND parts.color = 'red'))) --- Scenario (not sql): Thing.find all where (parts.code = 1 AND parts.color = 'red') AND (parts.code = 2 AND parts.color = 'green') order by the color of parts with code = 3 sql: SELECT things.id AS t0_r0, parts.id AS t1_r0, parts.thing_id AS t1_r1, parts.code AS t1_r2, parts.color AS t1_r3 FROM things LEFT OUTER JOIN parts ON parts.thing_id = things.id WHERE ((parts.code = 2 AND parts.color = 'green') AND things.id IN (SELECT things.id FROM things LEFT OUTER JOIN parts ON parts.thing_id = things.id WHERE (parts.code = 1 AND parts.color = 'red')) AND things.id IN (SELECT things.id FROM things LEFT OUTER JOIN parts ON parts.thing_id = things.id WHERE (parts.code = 3) ORDER BY parts.color))
This paste will be private.
From the Design Piracy series on my blog: