Fixed #26557 -- Converted empty strings to None when saving GenericIPAddressField.
This commit is contained in:
parent
2f698cd991
commit
4681d65048
|
@ -499,7 +499,7 @@ class BaseDatabaseOperations(object):
|
||||||
Transforms a string representation of an IP address into the expected
|
Transforms a string representation of an IP address into the expected
|
||||||
type for the backend driver.
|
type for the backend driver.
|
||||||
"""
|
"""
|
||||||
return value
|
return value or None
|
||||||
|
|
||||||
def year_lookup_bounds_for_date_field(self, value):
|
def year_lookup_bounds_for_date_field(self, value):
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -24,3 +24,6 @@ Bugfixes
|
||||||
|
|
||||||
* Fixed a regression causing the cached template loader to crash when using
|
* Fixed a regression causing the cached template loader to crash when using
|
||||||
template names starting with a dash (:ticket:`26536`).
|
template names starting with a dash (:ticket:`26536`).
|
||||||
|
|
||||||
|
* Restored conversion of an empty string to null when saving values of
|
||||||
|
``GenericIPAddressField`` on SQLite and MySQL (:ticket:`26557`).
|
||||||
|
|
|
@ -29,6 +29,14 @@ class GenericIPAddressFieldTests(TestCase):
|
||||||
o = GenericIPAddress.objects.get()
|
o = GenericIPAddress.objects.get()
|
||||||
self.assertIsNone(o.ip)
|
self.assertIsNone(o.ip)
|
||||||
|
|
||||||
|
def test_blank_string_saved_as_null(self):
|
||||||
|
o = GenericIPAddress.objects.create(ip='')
|
||||||
|
o.refresh_from_db()
|
||||||
|
self.assertIsNone(o.ip)
|
||||||
|
GenericIPAddress.objects.update(ip='')
|
||||||
|
o.refresh_from_db()
|
||||||
|
self.assertIsNone(o.ip)
|
||||||
|
|
||||||
def test_save_load(self):
|
def test_save_load(self):
|
||||||
instance = GenericIPAddress.objects.create(ip='::1')
|
instance = GenericIPAddress.objects.create(ip='::1')
|
||||||
loaded = GenericIPAddress.objects.get()
|
loaded = GenericIPAddress.objects.get()
|
||||||
|
|
Loading…
Reference in New Issue