我正在跟进一个问题,就是我之前询问过的一个问题,在这个问题中,我试图寻求从愚蠢/写得不好的mysql查询到postgresql的转换。 我相信我成功了。 无论如何,我正在使用手动从mysql数据库移动到postgres数据库的数据。 我使用的查询如下所示: """ UPDATE krypdos_coderound cru set is_correct = case when t.kv_values1 = t.kv_values2 then True else False end from (select cr.id, array_agg( case when kv1.code_round_id = cr.id then kv1.option_id else null end ) as kv_values1, array_agg( case when kv2.code_round_id = cr_m.id then kv2.option_id else null end ) as kv_values2 from krypdos_coderound cr […]
在Rails 2.x中,你可以使用validation来确保你有一个独特的组合值,像这样: validates_uniqueness_of :husband, :scope => :wife 在相应的迁移中,它可能看起来像这样: add_index :family, [:husband, :wife], :unique => true 这将确保丈夫/妻子的组合在数据库中是唯一的。 现在,在Rails 3中,validation语法发生了变化,范围属性似乎消失了。 现在看起来像: validates :husband, :presence => true 任何想法如何在Rails 3中实现联合validation? Rails 2.xvalidation仍然在Rails 3中工作,所以我仍然可以使用第一个示例,但看起来如此“古老”,有没有更好的方法?