该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-03-21
ambition的
User.detect { |u| u.email =~ 'chris%' && u.profile.blog == 'Err' } "SELECT users.`id` AS t0_r0 ... FROM users LEFT OUTER JOIN profiles ON profiles.user_id = users.id WHERE ((users.`email` LIKE 'chris%' AND profiles.blog = 'Err')) LIMIT 1" |
|
返回顶楼 | |
发表时间:2008-03-21
Stainlesssteel 写道 ambition的
User.detect { |u| u.email =~ 'chris%' && u.profile.blog == 'Err' } "SELECT users.`id` AS t0_r0 ... FROM users LEFT OUTER JOIN profiles ON profiles.user_id = users.id WHERE ((users.`email` LIKE 'chris%' AND profiles.blog = 'Err')) LIMIT 1" 我原来也没打算做rquerypad,想用ambition,但仔细看了下功能比较弱,inner join都不支持,更不要说乱序混合join了,花哨不实用只是花瓶 关于ambition, 我原来还想修改ambition来实现的,但发现ambition是用自己的优势绑住自己的脚,它抽象出核心部分,具体的ldap, sql的就做adpater,但sql毕竟比较复杂,要能达到sql的正常使用必须要扩展, 但是他的没有给adapter提供扩展能力,要改就要把ambition, 以及对应的adapter都改了,工作量还不如专门写一个针对activerecord的插件,这就是rquerypad的由来。 而且ambition为了用好看的ruby way(方向不错),还用到了parsetree,搞得太复杂,其实不过是activerecord的adapter,activerecord本来就弱,搞得再花也没用 |
|
返回顶楼 | |
发表时间:2008-03-21
或许可以给ambition贡献一下
ambition 模仿 LINQ 还是有前途的 |
|
返回顶楼 | |
发表时间:2008-03-21
哪我估计ambition要大改才行,毕竟他走上一个更抽象的层次,又想适应特殊要求的具体场合,我想这也就是半年多以来他无视inner join的基本需求的原因
|
|
返回顶楼 | |