mirror of
				https://github.com/django/django.git
				synced 2025-10-26 07:06:08 +00:00 
			
		
		
		
	This reverts 7990d254b0.
Thanks Marc Odermatt for the report.
			
			
This commit is contained in:
		| @@ -1810,13 +1810,11 @@ class DecimalField(Field): | |||||||
|             ) |             ) | ||||||
|         return decimal_value |         return decimal_value | ||||||
|  |  | ||||||
|     def get_db_prep_value(self, value, connection, prepared=False): |     def get_db_prep_save(self, value, connection): | ||||||
|         if not prepared: |  | ||||||
|             value = self.get_prep_value(value) |  | ||||||
|         if hasattr(value, "as_sql"): |         if hasattr(value, "as_sql"): | ||||||
|             return value |             return value | ||||||
|         return connection.ops.adapt_decimalfield_value( |         return connection.ops.adapt_decimalfield_value( | ||||||
|             value, self.max_digits, self.decimal_places |             self.to_python(value), self.max_digits, self.decimal_places | ||||||
|         ) |         ) | ||||||
|  |  | ||||||
|     def get_prep_value(self, value): |     def get_prep_value(self, value): | ||||||
|   | |||||||
| @@ -36,3 +36,7 @@ Bugfixes | |||||||
| * Fixed a regression in Django 4.2 that caused a crash of | * Fixed a regression in Django 4.2 that caused a crash of | ||||||
|   ``QuerySet.aggregate()`` with aggregates referencing subqueries |   ``QuerySet.aggregate()`` with aggregates referencing subqueries | ||||||
|   (:ticket:`34551`). |   (:ticket:`34551`). | ||||||
|  |  | ||||||
|  | * Fixed a regression in Django 4.2 that caused a crash of querysets on SQLite | ||||||
|  |   when filtering on ``DecimalField`` against values outside of the defined | ||||||
|  |   range (:ticket:`34590`). | ||||||
|   | |||||||
| @@ -91,7 +91,10 @@ class DecimalFieldTests(TestCase): | |||||||
|         Really big values can be used in a filter statement. |         Really big values can be used in a filter statement. | ||||||
|         """ |         """ | ||||||
|         # This should not crash. |         # This should not crash. | ||||||
|         Foo.objects.filter(d__gte=100000000000) |         self.assertSequenceEqual(Foo.objects.filter(d__gte=100000000000), []) | ||||||
|  |  | ||||||
|  |     def test_lookup_decimal_larger_than_max_digits(self): | ||||||
|  |         self.assertSequenceEqual(Foo.objects.filter(d__lte=Decimal("123456")), []) | ||||||
|  |  | ||||||
|     def test_max_digits_validation(self): |     def test_max_digits_validation(self): | ||||||
|         field = models.DecimalField(max_digits=2) |         field = models.DecimalField(max_digits=2) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user