Browse Source

Now LeCrud.datas() method has a lang argument allowing datas to be indexed by fieldname translations

Yann Weber 8 years ago
parent
commit
6368aaea34
1 changed files with 7 additions and 3 deletions
  1. 7
    3
      leapi/lecrud.py

+ 7
- 3
leapi/lecrud.py View File

@@ -220,13 +220,17 @@ class _LeCrud(object):
220 220
         return getattr(self, self.uidname())
221 221
 
222 222
     ## @brief Returns object datas
223
-    # @param
223
+    # @param internal bool : If True return all datas including internal fields
224
+    # @param lang str | None : if None return datas indexed with field name, else datas are indexed with field name translation
224 225
     # @return a dict of fieldname : value
225
-    def datas(self, internal=True):
226
+    def datas(self, internal = True, lang = None):
226 227
         res = dict()
227 228
         for fname, ftt in self.fieldtypes().items():
228 229
             if (internal or (not internal and not ftt.is_internal)) and hasattr(self, fname):
229
-                res[fname] = getattr(self, fname)
230
+                if lang is None:
231
+                    res[fname] = getattr(self, fname)
232
+                else:
233
+                    res[self.ml_fields_strings[fname][lang]] = getattr(self, fname)
230 234
         return res
231 235
 
232 236
     ## @brief Indicates if an instance is complete

Loading…
Cancel
Save