0

Rubyでdatamapperを使用しています。テーブルに挿入する前に、新しいデータ セットを検証したいと考えています。私の検証基準は..

1) フィールド「名前」が存在しない場合にのみ挿入します。

2) 同じ 'name' を持つレコードに既に 'submit_date' がある場合 (null でない) は挿入されません。

私は dm-validations を見て、validates_uniqueness_of が役立つと思います。次のコードを試します

validates_uniqueness_of :submit_date, :scope => :name

しかし、結果は期待どおりではありません。同じ「名前」がまだテーブルに追加されていますが、既存の「名前」にはすでに「submit_date」値があります。

id|name|submit_date|
1 |LotA|Null
2 |LotB|2014-05-02
3 |LotB|Null <--- This record should not be added because LotB is existing and already submit
4 |LotC|Null

何かアドバイスはありますか?

4

1 に答える 1