に保存することはできません私は、私は私はそれがまだないときにリンクを追加したいこのルビーDataMapperのは、データベース
links.each do |link|
puts link
if Image.all(:url=>link).empty? == true
img=Image.create(:url => link)
puts "Cannot save to database "if img.saved? == false
end
end
のようなループを持っている
DataMapper.setup :default, "sqlite://#{Dir.pwd}/image.db"
class Image
include DataMapper::Resource
property :id , Serial
property :url , String,unique: true
property :desc , String,unique: true,default: "empty"
end
DataMapper.finalize.auto_upgrade!
などのデータベーススキーマを持っていますデータベースに保存する。私はスクリプトを実行し、常に取得することはできませんデータベースに保存します。私は間違って何をしていますか?助けてくれてありがとう。 編集:私は私のコードに
DataMapper::Logger.new($stdout, :debug)
を追加し、何のINSERTクエリのみ選択はありませんでした。
助けてくれてありがとうございました。それは完全に動作します。 – John
[Datamapper](http://datamapper.org/docs/create_and_destroy.html)にエラー時に例外を発生させるよう依頼することができます: 'Image.raise_on_save_failure = true' –