我需要从消防局数据库中获取所有的数据。我走这边,https://stackoverflow.com/a/55865045/9139407
Future<Photography> getPhotography() {
Future<Photography> data = await db
.collection('photography')
.document('0yUc5QBGHNNq6WK9CyyF')
.setData(jsonDecode(jsonEncode(Photography(
[AllImages(["list"])],
"image_url",
"Shanika",
"image_url",
"lovely couple",
"Bhanuka"
))));
return data;
}错误信息是:
未处理的异常:类型'Future< void >‘不是'Future< Photography>’的子类型
摄影模型类
import 'package:json_annotation/json_annotation.dart';
part 'Model.g.dart';
@JsonSerializable()
class Photography{
List<AllImages> all_images;
String couplePhoto;
String female;
String image_url;
String info;
String male;
Photography();
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);
}和下一个问题是,如何在区块汇中添加这些数据?
Sink<Photography> get inFirestore => _firestoreController.sink;像这样吗?但错误是,参数类型“未来”不能分配给参数类型“摄影”
final result = db.getPhotography();
inFirestore.add(result);发布于 2019-06-29 13:16:39
Document.setData()返回一个Future<void> --这意味着它在将来完成时不会返回任何数据。当然,这对一个策划人来说是合理的。所以你不能把它变成任何东西。目前还不清楚您打算从哪里获得data。从空(?) Photography开始,对其进行编码、解码并存储,然后期望返回一些内容。什么?原始的空物体?(你可以把它还回去--但我不认为这是你想要的。)
https://stackoverflow.com/questions/56815045
复制相似问题