Ich habe einen Rails-Server, der ein MySQL-Datum liefert. Meine Klasse basiert auf dem AngularDart-Tutorial. Es scheint nicht korrekt zu laden.JSON-Datum in Dart DateTime laden
Mein artist_service. dart-Methode:
Future<List<Record>> getArtistsRecords(int id) async {
String url = 'http://catbox.loc/artists/${id.toString()}/records'; // Rails: artists/:id/records
try {
HttpRequest response = await HttpRequest.request(
url, requestHeaders: headers);
List data = JSON.decode(response.responseText);
final records = data
.map((value) => new Record.fromJson(value))
.toList();
return records;
}
catch (e) {
throw _handleError(e);
}
}
Meine artist.dart Factory-Methode:
factory Record.fromJson(Map<String, dynamic> record) =>
new Record(_toInt(record['id']),
record['title'],
record['catalog'],
record['artist_id'],
record['label_id'],
record['style_id'],
record['alternate_catalog'],
record['recording_date'],
record['notes'],
record['penguin'],
record['category']
);
Das beanstandete Element ist recording_date
, die als DateTime
deklariert wird. Wenn ich in HTML als {{recording_date}}
einschließe, bekomme ich zum Beispiel 1958-03-09
. Wenn ich versuche, {{ recording_date | date}}
es als ungültiges Format ausgibt. Ich vermute, dass ich das Objekt DateTime
nicht korrekt aufstelle. Ist es möglich, dies mit der Fabrikmethode zu tun?