mirror of
https://github.com/inventree/InvenTree.git
synced 2025-05-03 13:58:47 +00:00
fix validation
This commit is contained in:
parent
fc6f1b4acc
commit
b8cdcab10d
@ -72,6 +72,12 @@ class ReferenceIndexingMixin(models.Model):
|
|||||||
|
|
||||||
reference = getattr(self, 'reference', '')
|
reference = getattr(self, 'reference', '')
|
||||||
|
|
||||||
|
self.reference_int = extract_int(reference)
|
||||||
|
|
||||||
|
reference_int = models.BigIntegerField(default=0)
|
||||||
|
|
||||||
|
|
||||||
|
def extract_int(reference):
|
||||||
# Default value if we cannot convert to an integer
|
# Default value if we cannot convert to an integer
|
||||||
ref_int = 0
|
ref_int = 0
|
||||||
|
|
||||||
@ -84,10 +90,7 @@ class ReferenceIndexingMixin(models.Model):
|
|||||||
ref_int = int(ref)
|
ref_int = int(ref)
|
||||||
except:
|
except:
|
||||||
ref_int = 0
|
ref_int = 0
|
||||||
|
return ref_int
|
||||||
self.reference_int = ref_int
|
|
||||||
|
|
||||||
reference_int = models.BigIntegerField(default=0)
|
|
||||||
|
|
||||||
|
|
||||||
class InvenTreeAttachment(models.Model):
|
class InvenTreeAttachment(models.Model):
|
||||||
|
@ -28,6 +28,8 @@ from rest_framework.fields import empty
|
|||||||
from rest_framework.exceptions import ValidationError
|
from rest_framework.exceptions import ValidationError
|
||||||
from rest_framework.serializers import DecimalField
|
from rest_framework.serializers import DecimalField
|
||||||
|
|
||||||
|
from .models import extract_int
|
||||||
|
|
||||||
|
|
||||||
class InvenTreeMoneySerializer(MoneyField):
|
class InvenTreeMoneySerializer(MoneyField):
|
||||||
"""
|
"""
|
||||||
@ -246,9 +248,9 @@ class ReferenceIndexingSerializerMixin():
|
|||||||
for the BigIntegerField
|
for the BigIntegerField
|
||||||
"""
|
"""
|
||||||
def validate_reference(self, value):
|
def validate_reference(self, value):
|
||||||
if int(value) < -models.BigIntegerField.MAX_BIGINT:
|
if extract_int(value) < -models.BigIntegerField.MAX_BIGINT:
|
||||||
raise serializers.ValidationError('reference is to to small')
|
raise serializers.ValidationError('reference is to to small')
|
||||||
if int(value) > models.BigIntegerField.MAX_BIGINT:
|
if extract_int(value) > models.BigIntegerField.MAX_BIGINT:
|
||||||
raise serializers.ValidationError('reference is to to big')
|
raise serializers.ValidationError('reference is to to big')
|
||||||
return value
|
return value
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user