Class XlsFile¶
-
class
jmb.core.utils.data_import.
XlsFile
(filename=None, file_contents=None, auto=False, sheet_index=0, opts=None, model=None)[source]¶ - Parameters
filename – the cvs file to open
auto_fields – (boolean) se True, i nomi delle colonne saranno desunti dalla prima riga
sheet_index – indice del foglio da usare (default: 0)
Class CsvFile¶
Class Sheet¶
-
class
jmb.core.utils.data_import.
Sheet
(model, opts)[source]¶ Abstract sheet
-
clean_field_name
(value)[source]¶ Clean each column heading to make it a suitable field_name. By default strip empty spaces, non ascii chars, parenthesis :param value: the column header
-
do
(row, kw, j)[source]¶ implement here your import
- Parameters
row – a namedtuple. Names are the names in the original columns
kw –
a dict suitable to feed
defaults
keyword attribute ofget_or_create
if fields_map is provided:def do(self, row, kw): Contact.objects.get_or_create(cod=row.cod, defaults=kw)
j – integer 1-based counting read rows
-
get_fk_as_dict
(model, value='id', key='name')[source]¶ Return a dict of all values of a (possible) fk as dict
- Parameters
model – the django db model
value – the field to use as value of the dict (default
id
) Note: will be loweredkey – the field to use as key of the dict (defaykt
name
)
-