#dart #aqueduct
#dart #акведук
Вопрос:
Я использую aqueduct
и получаю ошибку
'List<Serializable>' is not a subtype of type 'List<MyManagedObject>' of 'list' #0 _TypeError._throwNew (dart:core/runtime/liberrors_patch.dart:89:51)
но я не знаю, что это такое? Я нормально запускал свой код и просто получаю эту ошибку, которую я не могу решить, я много гуглю, но не могу найти решение.
Это моя «точка входа»
@override
Controller get entryPoint {
final router = Router();
router
.route('${apiBaseUrl}/objects')
.link(() => ObjectController(context));
}
и это мой метод post:
@Operation.post()
Future<Response> createMyObject(@Bind.body() List<MyManagedObject> list) async {
...
return Response.ok("ok");
}
Я думаю, что это может быть ошибкой библиотеки, но я просто не могу знать.
Комментарии:
1. вы читали документы по сериализации? aqueduct.io/docs/http/request_and_response/… Возможно, они не поддерживают
List<T>
, но я не уверен … в любом случае, похоже, что ваш список принимаетMyObject
и ошибка говоритMyManagedObject
?2. спасибо Ренато, я меняю реальный класс на ‘MyObject’ для лучшей абстракции. Я читаю вашу ссылку, но я использовал со ‘List’ после обновления, а затем сломался.
Ответ №1:
В Dart 2.1.1 было критическое изменение, которое вызвало проблему со списками привязки. Это было исправлено в Aqueduct 3.2 (выпущен сегодня 3/7).