From 5463258df9a312ae78ee1bca285eb824d16c3404 Mon Sep 17 00:00:00 2001 From: Torsten Dittmann Date: Tue, 14 Dec 2021 22:01:58 +0100 Subject: [PATCH] fix: convert default value to float on attribute creation --- app/controllers/api/database.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/controllers/api/database.php b/app/controllers/api/database.php index 3759c63ad2..51b60277f0 100644 --- a/app/controllers/api/database.php +++ b/app/controllers/api/database.php @@ -1045,7 +1045,7 @@ App::post('/v1/database/collections/:collectionId/attributes/float') ->inject('database') ->inject('audits') ->inject('usage') - ->action(function ($collectionId, $attributeId, $required, $min, $max, $default, $array, $response, $dbForInternal, $dbForExternal,$database, $audits, $usage) { + ->action(function ($collectionId, $attributeId, $required, $min, $max, $default, $array, $response, $dbForInternal, $dbForExternal, $database, $audits, $usage) { /** @var Appwrite\Utopia\Response $response */ /** @var Utopia\Database\Database $dbForInternal*/ /** @var Utopia\Database\Database $dbForExternal*/ @@ -1060,6 +1060,11 @@ App::post('/v1/database/collections/:collectionId/attributes/float') if ($min > $max) { throw new Exception('Minimum value must be lesser than maximum value', 400); } + + // Ensure default value is a float + if (!is_null($default)) { + $default = \floatval($default); + } $validator = new Range($min, $max, Database::VAR_FLOAT);