0
我嘗試將dm-observer類拆分爲模型類中的單獨文件時遇到了錯誤。以前它工作得很好,如果我把它全部放入一個文件。如何將datamapper觀察器類與模型類分離爲不同的文件?
# test_observer.rb
require 'dm-observer'
class TestObserver
include DataMapper::Observer
observe Test
before :create do
# does funky stuff
end
end
# test.rb
require 'dm-core'
require File.dirname(__FILE__) + '/test_observer'
class Test
include DataMapper::Resource
property :id, Serial
property :name, String
property :state, Integer
end
每當我需要測試類,我遇到了錯誤:
uninitialized constant TestObserver::Test (NameError)
我不知道爲什麼TestObserver ::前置到類名。我有一種感覺,我沒有把要求放在正確的地方,但我已經嘗試了一切,但它仍然不會很好。希望對此有所幫助。
謝謝!
再次感謝solnic!這很好。有沒有什麼辦法可以將test_observer的require變成test.rb,這樣我就不用擔心每次使用Test類都需要觀察者類? – zaizhuang 2010-07-21 08:01:46