Ignore:
Timestamp:
05/10/12 10:08:52 (7 years ago)
Author:
mnagni
Message:

djencoder fix for Windows machines

File:
1 edited

Legend:

Unmodified
Added
Removed
  • mauRepo/MolesManager/trunk/cedaMoles/MolesManager/djencoder.py

    r8608 r8610  
    99import datetime 
    1010import re 
     11import os 
    1112from decimal import Decimal 
    1213from sqlalchemy.orm.collections import InstrumentedList 
     
    9192        else: 
    9293            markers = None 
    93         return self._iterencode(o, markers) 
     94 
     95        #Guarantee that works in linux             
     96        if os.name != 'nt': 
     97            return self._iterencode(o, markers) 
     98 
     99        #Guarantee that works in windows                  
     100        if self.ensure_ascii: 
     101            _encoder = encode_basestring_ascii 
     102        else: 
     103            _encoder = encode_basestring 
     104        if self.encoding != 'utf-8': 
     105            def _encoder(o, _orig_encoder=_encoder, _encoding=self.encoding): 
     106                if isinstance(o, str): 
     107                    o = o.decode(_encoding) 
     108                return _orig_encoder(o) 
     109                 
     110         
    94111 
    95112def methodsWithDecorator(cls, decoratorName): 
Note: See TracChangeset for help on using the changeset viewer.