mirror of
https://github.com/netbox-community/netbox.git
synced 2025-09-06 06:13:36 -06:00
Add support for pipe character as delimiting character for bulk imports
This commit is contained in:
parent
f3ecf94393
commit
2004ab7a0e
@ -151,12 +151,14 @@ class CSVDelimiterChoices(ChoiceSet):
|
||||
AUTO = 'auto'
|
||||
COMMA = CSV_DELIMITERS['comma']
|
||||
SEMICOLON = CSV_DELIMITERS['semicolon']
|
||||
PIPE = CSV_DELIMITERS['pipe']
|
||||
TAB = CSV_DELIMITERS['tab']
|
||||
|
||||
CHOICES = [
|
||||
(AUTO, _('Auto-detect')),
|
||||
(COMMA, _('Comma')),
|
||||
(SEMICOLON, _('Semicolon')),
|
||||
(PIPE, _('Pipe')),
|
||||
(TAB, _('Tab')),
|
||||
]
|
||||
|
||||
|
@ -60,11 +60,3 @@ CENSOR_TOKEN_CHANGED = '***CHANGED***'
|
||||
|
||||
# Placeholder text for empty tables
|
||||
EMPTY_TABLE_TEXT = 'No results found'
|
||||
|
||||
# CSV delimiters
|
||||
CSV_DELIMITERS = {
|
||||
'comma': ',',
|
||||
'semicolon': ';',
|
||||
'pipe': '|',
|
||||
'tab': '\t',
|
||||
}
|
||||
|
@ -1,9 +1,9 @@
|
||||
from django.conf import settings
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from netbox.constants import CSV_DELIMITERS
|
||||
from netbox.registry import registry
|
||||
from users.preferences import UserPreference
|
||||
from utilities.constants import CSV_DELIMITERS
|
||||
from utilities.paginator import EnhancedPaginator
|
||||
|
||||
|
||||
|
@ -69,6 +69,7 @@ HTTP_REQUEST_META_SAFE_COPY = [
|
||||
CSV_DELIMITERS = {
|
||||
'comma': ',',
|
||||
'semicolon': ';',
|
||||
'pipe': '|',
|
||||
'tab': '\t',
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django_tables2.export import TableExport as TableExport_
|
||||
|
||||
from netbox.constants import CSV_DELIMITERS
|
||||
from utilities.constants import CSV_DELIMITERS
|
||||
|
||||
__all__ = (
|
||||
'TableExport',
|
||||
|
@ -115,7 +115,7 @@ class BulkImportForm(ChangelogMessageMixin, BackgroundJobMixin, SyncedDataMixin,
|
||||
dialect = csv.Sniffer().sniff(data.strip(), delimiters=delimiters)
|
||||
except csv.Error:
|
||||
dialect = csv.excel
|
||||
elif delimiter in (CSVDelimiterChoices.COMMA, CSVDelimiterChoices.SEMICOLON):
|
||||
elif delimiter in (CSVDelimiterChoices.COMMA, CSVDelimiterChoices.SEMICOLON, CSVDelimiterChoices.PIPE):
|
||||
dialect = csv.excel
|
||||
dialect.delimiter = delimiter
|
||||
elif delimiter == CSVDelimiterChoices.TAB:
|
||||
|
Loading…
Reference in New Issue
Block a user