diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-08-17 15:57:13 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-08-17 15:57:13 +0200 |
commit | 8c077c5d9c392e5eb7358610f4a843d4f74f3e72 (patch) | |
tree | 5fe0db8d67a565101ce1e4ce734e57f45a43f2e0 | |
parent | 1b46a5f54ca808c88a236152327b1a6a5d3e6c19 (diff) | |
download | Ishtar-8c077c5d9c392e5eb7358610f4a843d4f74f3e72.tar.bz2 Ishtar-8c077c5d9c392e5eb7358610f4a843d4f74f3e72.zip |
Admin: importer column display col string
-rw-r--r-- | ishtar_common/admin.py | 5 | ||||
-rw-r--r-- | ishtar_common/models_imports.py | 6 | ||||
-rw-r--r-- | ishtar_common/utils.py | 8 |
3 files changed, 16 insertions, 3 deletions
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py index 6b741c3c4..ab96dee8a 100644 --- a/ishtar_common/admin.py +++ b/ishtar_common/admin.py @@ -713,8 +713,9 @@ class ImportTargetInline(admin.TabularInline): class ImporterColumnAdmin(admin.ModelAdmin): - list_display = ('label', 'importer_type', 'col_number', 'description', - 'targets_lbl', 'duplicate_fields_lbl', 'required') + list_display = ('label', 'importer_type', 'col_number', 'col_string', + 'description', 'targets_lbl', 'duplicate_fields_lbl', + 'required') list_filter = ('importer_type',) inlines = (ImportTargetInline, ImporterDuplicateFieldInline) actions = [duplicate_importercolumn, shift_left, shift_right] diff --git a/ishtar_common/models_imports.py b/ishtar_common/models_imports.py index 6b910a440..36e969276 100644 --- a/ishtar_common/models_imports.py +++ b/ishtar_common/models_imports.py @@ -41,7 +41,7 @@ from django.utils.translation import ugettext_lazy as _, pgettext_lazy from ishtar_common.utils import create_slug, \ get_all_related_m2m_objects_with_model, put_session_message, \ - put_session_var, get_session_var + put_session_var, get_session_var, num2col from ishtar_common.data_importer import Importer, ImportFormater, \ IntegerFormater, FloatFormater, UnicodeFormater, DateFormater, \ TypeFormater, YearFormater, StrToBoolean, FileFormater, InseeFormater @@ -378,6 +378,10 @@ class ImporterColumn(models.Model): def __unicode__(self): return u"{} - {}".format(self.importer_type, self.col_number) + @property + def col_string(self): + return num2col(self.col_number) + def natural_key(self): return self.importer_type.slug, self.col_number diff --git a/ishtar_common/utils.py b/ishtar_common/utils.py index 8cb06aacb..1c64f7940 100644 --- a/ishtar_common/utils.py +++ b/ishtar_common/utils.py @@ -441,6 +441,14 @@ def get_all_related_objects(model): ] +def num2col(n): + string = "" + while n > 0: + n, remainder = divmod(n - 1, 26) + string = chr(65 + remainder) + string + return string + + def merge_tsvectors(vectors): """ Parse tsvector to merge them in one string |