fillobj(): when '*' is in fields, or if fields is None, select all of not loaded fields
This commit is contained in:
parent
10d8c85077
commit
3ced2bee38
1 changed files with 8 additions and 2 deletions
|
|
@ -22,6 +22,7 @@ from threading import RLock
|
|||
from logging import debug
|
||||
|
||||
from weboob.capabilities.base import IBaseCap, NotLoaded, CapBaseObject
|
||||
from weboob.tools.misc import iter_fields
|
||||
|
||||
|
||||
__all__ = ['BaseBackend', 'ObjectNotAvailable']
|
||||
|
|
@ -197,9 +198,14 @@ class BaseBackend(object):
|
|||
return (v is NotLoaded or isinstance(value, CapBaseObject) and not value.__iscomplete__())
|
||||
|
||||
missing_fields = []
|
||||
if fields is None or '*' in fields:
|
||||
if isinstance(obj, CapBaseObject):
|
||||
fields = obj.iter_fields()
|
||||
else:
|
||||
fields = iter_fields(obj)
|
||||
|
||||
for field in fields:
|
||||
if not hasattr(obj, field):
|
||||
continue
|
||||
assert hasattr(obj, field), u'%r does not have field %s' % (obj, field)
|
||||
value = getattr(obj, field)
|
||||
|
||||
missing = False
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue