我真的應該知道這個......但我不知道。這裏的是Barby了寶石的文檔中提供了一種方法,:關於如何調用方法的基本問題
valid?()
,這裏是一個有效的回調在我的模型:
require 'barby'
require 'barby/barcode/bookland'
def barcode
if Barcodeimg.find_by_isbn_id(self.id).nil?
barcode = Barby::Bookland.new("'#{self.productidentifier_idvalue}'")
my_bc = Barcodeimg.new(:client_id => self.client_id, :isbn_id => self.id)
f = File.open("barcode.png", 'w+')
f.write barcode.to_png
my_bc.image = f
my_bc.save!
end
end
但是,有時我得到一個「數據無效」錯誤,所以我想,顯然,使用有效的?方法。但我不知道該怎麼稱呼它。如果我做
if self.productidentifier_idvalue.valid?
我得到
undefined method `valid?' for "9781551113180":String
編輯:更多的錯誤:
如果我做
barcode = Barby::Bookland.new("'#{self.productidentifier_idvalue}'")
if barcode.valid?
#more
我得到的巴比錯誤 '無效數據'
你確定你的ID是一直有效嗎? 「數據無效錯誤」可能來自於此。 –
該ID是,因爲它是由應用程序創建的主鍵整數。我一直故意給它一個無效的ISBN13(productidentifier_idvalue)。 – snowangel