Matt Chaput avatar Matt Chaput committed a494b8f

Fixed brain fart in NUMERIC Decimal support. Fixes issue #56.

Comments (0)

Files changed (1)

src/whoosh/fields.py

         # word, freq, weight, valuestring
         return [(to_text(num), 1, 1.0, '')]
     
-    def to_text(self, x):
+    def to_text(self, x, shift=0):
         if self.decimal_places:
             x = Decimal(x)
             x *= 10 ** self.decimal_places
+        if shift:
+            x >>= shift
         return self._to_text(self.type(x))
     
     def from_text(self, t):
         n = self._from_text(t)
         if self.decimal_places:
             s = str(n)
-            n = Decimal(s[:-4] + "." + s[-4:])
+            n = Decimal(s[:-self.decimal_places] + "." + s[-self.decimal_places:])
         return n
     
     def process_text(self, text, **kwargs):
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.