Opened 13 years ago
Closed 13 years ago
#18367 closed Bug (fixed)
LayerMapping.verify_ogr_field fails when trying to map OFTString to TextField
Reported by: | Owned by: | nobody | |
---|---|---|---|
Component: | GIS | Version: | 1.4 |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Unreviewed | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
In LayerMapping.verify_ogr_field()
, there is this check around line 335 of contrib/gis/utils/layermapping.py:
val = ogr_field.value if len(val) > model_field.max_length: raise InvalidString('%s model field maximum string length is %s, given %s characters.' % (model_field.name, model_field.max_length, len(val)))
When model_field is an instance of models.TextField
this check will fail because model_field.max_length
is None.
I was able to fix this by checking model_field.max_length before the length test:
val = ogr_field.value if model_field.max_length and len(val) > model_field.max_length: raise InvalidString('%s model field maximum string length is %s, given %s characters.' % (model_field.name, model_field.max_length, len(val)))
Note:
See TracTickets
for help on using tickets.
In [f4abba5200e3164003781698c0854383bbc210be]: