2011-09-08 4 views
1

私はDataMapper siteからガイドに従っていましたが、これは私が持っているものです。新しいDataMapperタイプを作成するには?

module DataMapper 
    class Property 
     class SymbolStore < String 
      def dump(v) 
       v.to_s 
      end 

      def load(v) 
       v.to_sym 
      end 

      def typcast_to_primitive(v) 
       v.to_s 
      end 
     end 
    end 
end 

しかし、私は奇妙な行動を取得しています。 SymbolStoreの値を設定しようとすると、文字列として返されます。しかし、レコードをロードすると、シンボルとして正常に戻ってきます。私の実験では、loadは、レコードがロードされたときにのみ呼び出され、今まで設定したものの値を取得しようとしているときには呼び出されないようです。

実際には、設定した値を取得する必要はありませんが、この問題は理にかなっていません。

答えて

2

typecast_to_primitiveで試してみてください(あなたにはタイプミスがあります)。

関連する問題