мой cloud_firestore выглядит так:
all_images:{imageUrl:[]}, couplePhoto:String, female:String, image_url:String, info:String, male:String
мой модельный класс:
import 'package:json_annotation/json_annotation.dart';
part 'Model.g.dart';
@JsonSerializable()
class Photography {
final List<AllImages> all_images;
final String couplePhoto;
final String female;
final String image_url;
final String info;
final String male;
Photography(this.all_images, this.couplePhoto, this.female, this.image_url,
this.info, this.male);
factory Photography.fromJson(Map<String, dynamic> json) =>
_$PhotographyFromJson(json);
Map<String, dynamic> toJson() => _$PhotographyToJson(this);
}
@JsonSerializable()
class AllImages {
final List<String> imageUrl;
AllImages(this.imageUrl);
factory AllImages.fromJson(Map<String, dynamic> json) =>
_$AllImagesFromJson(json);
Map<String, dynamic> toJson() => _$AllImagesToJson(this);
}
В настоящее время у меня нет панели администратора для вставки данных. Итак, теперь мне нужно прочитать данные. При запуске этой базы данных возникает ошибка.
Future<Photography> postsMap = Firestore.instance
.collection('photography')
.document("0yUc5QBGHNNq6WK9CyyF")
.setData(jsonDecode(jsonEncode(Photography)));
В этой строке:
.setData(jsonDecode(jsonEncode(Photography)));
Вы ссылаетесь на объект Type для класса Photograph, вместо этого вам нужно передать экземпляр (поэтому вам нужно будет вызвать конструктор с требуемыми значениями и передать результат этого).
.setData(jsonDecode(jsonEncode(Photography(<pass-in-constructor-args-here>))));
моя ошибка. но грядет другая проблема, братан. если есть время проверьте stackoverflow.com/q/56815045/9139407
если вы используете библиотеку json_serialization, будьте осторожны. иногда сгенерированный метод в вашем случае "_$AllImagesToJson()" не работает должным образом. загляни внутрь этого. Я знаю, что библиотека json_serialization не работает должным образом с точки зрения общих объектов.
Я удаляю конструктор в классе модели, но возникает та же ошибка