summaryrefslogtreecommitdiff
path: root/ishtar_common/models.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@proxience.com>2015-10-07 17:35:34 +0200
committerÉtienne Loks <etienne.loks@proxience.com>2015-10-07 17:35:34 +0200
commita9be4aa52a40a561ec859a3016387dd5920e4139 (patch)
tree1a4336e68f251e4e4ea5b73c9ab839fc7fd96035 /ishtar_common/models.py
parentdad03f626f1028daa44821a7d88551fec21ae88f (diff)
downloadIshtar-a9be4aa52a40a561ec859a3016387dd5920e4139.tar.bz2
Ishtar-a9be4aa52a40a561ec859a3016387dd5920e4139.zip
Imports: allow to force creation of an item
Diffstat (limited to 'ishtar_common/models.py')
-rw-r--r--ishtar_common/models.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index 26fe0bf51..991e26060 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -1164,19 +1164,23 @@ class ImporterType(models.Model):
if not nb:
LINE_FORMAT.append(None)
continue
+ force_news = []
for target in column.targets.all():
ft = target.formater_type.get_formater_type(target)
if not ft:
continue
formater_types.append(ft)
targets.append(target.target)
+ force_news.append(target.force_new)
formater_kwargs = {}
if column.regexp_pre_filter:
formater_kwargs['regexp'] = re.compile(
column.regexp_pre_filter.regexp)
formater_kwargs['duplicate_fields'] = [
- field.field_name for field in column.duplicate_fields.all()]
+ (field.field_name, field.force_new)
+ for field in column.duplicate_fields.all()]
formater_kwargs['required'] = column.required
+ formater_kwargs['force_new'] = force_news
formater = ImportFormater(targets, formater_types,
**formater_kwargs)
LINE_FORMAT.append(formater)
@@ -1297,6 +1301,8 @@ class ImporterDuplicateField(models.Model):
column = models.ForeignKey(ImporterColumn, related_name='duplicate_fields')
field_name = models.CharField(_(u"Field name"), blank=True, null=True,
max_length=200)
+ force_new = models.BooleanField(_(u"Force creation of new item"),
+ default=False)
class Meta:
verbose_name = _(u"Importer - Duplicate field")
@@ -1325,6 +1331,8 @@ class ImportTarget(models.Model):
target = models.CharField(u"Target", max_length=500)
regexp_filter = models.ForeignKey("Regexp", blank=True, null=True)
formater_type = models.ForeignKey("FormaterType")
+ force_new = models.BooleanField(_(u"Force creation of new item"),
+ default=False)
class Meta:
verbose_name = _(u"Importer - Target")