コード例 #1
0
ファイル: product.py プロジェクト: hforge/shop
 def _get_dynamic_catalog_values(self):
     values = {}
     dynamic_schema = self.get_dynamic_schema()
     for key, datatype in get_product_filters().items():
         register_key = 'DFT-%s' % key
         if key in dynamic_schema:
             value = self.get_dynamic_property(key, dynamic_schema)
             if value and getattr(datatype, 'is_range', False):
                 value = int(value * 100)
             if value:
                 values[register_key] = value
     # Dynamic indexation
     register_fields = get_register_fields()
     model = self.get_product_model()
     if model is None:
         return {}
     for key, datatype in self.get_dynamic_schema().items():
         # We index dynamic properties that correspond to
         # an EnumerateTable datatype.
         # So we are able to know if enumerate value is used or not
         if issubclass(datatype, EnumerateTable_to_Enumerate) is True:
             register_key = 'DFT-%s' % datatype.enumerate_name
             if register_key not in register_fields:
                 register_field(register_key, String(is_indexed=True))
             if datatype.multiple is True:
                 values[register_key] = ' '.join(self.get_property(key))
             else:
                 values[register_key] = self.get_property(key)
     return values
コード例 #2
0
 def _get_dynamic_catalog_values(self):
     values = {}
     dynamic_schema = self.get_dynamic_schema()
     for key, datatype in get_product_filters().items():
         register_key = 'DFT-%s' % key
         if key in dynamic_schema:
             value = self.get_dynamic_property(key, dynamic_schema)
             if value and getattr(datatype, 'is_range', False):
                 value = int(value * 100)
             if value:
                 values[register_key] = value
     # Dynamic indexation
     register_fields = get_register_fields()
     model = self.get_product_model()
     if model is None:
         return {}
     for key, datatype in self.get_dynamic_schema().items():
         # We index dynamic properties that correspond to
         # an EnumerateTable datatype.
         # So we are able to know if enumerate value is used or not
         if issubclass(datatype, EnumerateTable_to_Enumerate) is True:
             register_key = 'DFT-%s' % datatype.enumerate_name
             if register_key not in register_fields:
                 register_field(register_key, String(is_indexed=True))
             if datatype.multiple is True:
                 values[register_key] = ' '.join(self.get_property(key))
             else:
                 values[register_key] = self.get_property(key)
     return values
コード例 #3
0
ファイル: filter_box.py プロジェクト: nicolasderam/shop
 def get_options(cls):
     options = [{"name": "stored_price", "value": MSG(u"Price")}, {"name": "stored_weight", "value": MSG(u"Weight")}]
     for name, datatype in get_product_filters().items():
         value = name
         name = "DFT-%s" % name
         if getattr(datatype, "is_range", False):
             options.append({"name": name, "value": value})
     return options
コード例 #4
0
ファイル: filter_box.py プロジェクト: nicolasderam/shop
 def get_options(cls):
     options = [{
         'name': 'stored_price',
         'value': MSG(u'Price')
     }, {
         'name': 'stored_weight',
         'value': MSG(u'Weight')
     }]
     for name, datatype in get_product_filters().items():
         value = name
         name = 'DFT-%s' % name
         if getattr(datatype, 'is_range', False):
             options.append({'name': name, 'value': value})
     return options
コード例 #5
0
ファイル: filter_box.py プロジェクト: nicolasderam/shop
 def get_options(cls):
     return [
         {"name": x.enumerate_name, "value": x.enumerate_name}
         for x in get_product_filters().values()
         if hasattr(x, "enumerate_name")
     ]
コード例 #6
0
ファイル: filter_box.py プロジェクト: nicolasderam/shop
 def get_options(cls):
     return [{
         'name': x.enumerate_name,
         'value': x.enumerate_name
     } for x in get_product_filters().values()
             if hasattr(x, 'enumerate_name')]