Я работал с Spring Boot и Flutter. У меня есть 3 списка, в которых ингредиенты, единицы и количество хранятся для каждого ингредиента. Мне нужно, чтобы когда пользователь нажимал кнопку save
, цикл повторялся среди 3 списков, получал значение i-го индекса и сохранял его в базе данных, нажимая URL-адрес.
var unCheckedIngredients = [], unCheckedUnits = [], unCheckedQuantities = [];
onPressed: () {
if (_formKey.currentState.validate()) {
_formKey.currentState.save();
for (int i=0;i<unCheckedQuantities.length;i++)
{
insertUserIngredient(unCheckedIngredients[i]);
insertUserUnit(unCheckedUnits[i]);
insertUserQuantity(unCheckedQuantities[i]);
}
setState(() {
_formKey.currentState.reset();
displayChipList.clear();
});
}
},
Поскольку вызываются 3 функции. Таким образом, он должен работать последовательно, но в DART я не понимаю, в чем проблема, он сначала запрашивает 2-ю инструкцию, а затем 1-ю строку случайным образом. Он должен работать последовательно.
Скажем, если unCheckedQuantities. length = 2
- он выполняет первую строку в цикле for 2 раза, а затем 2-ю строку дважды и так далее.
Ошибка
/flutter (12297): GET http://10.0.2.2:8085/user/ingredient/quantity?ingredient_quantity=3 I/flutter (12297): qauntity = {"timestamp":"2020-04-02T15:29:54.030+0000","status":500,"error": «Внутренняя ошибка сервера», «сообщение»: «запрос не вернул уникальный результат: 2; вложенным исключением является javax.persistence.NonUniqueResultException: запрос не вернул уникальный результат: 2», «путь»: «/user/ingredient /количество"} E/FirebaseInstanceId(12297): не удалось получить токен: AUTHENTICATION_FAILED