我有一个名为customStep
的模型,我想将名为customSteps
的customStep列表推送到Firestore。
这是代码:
Firestore.instance
.collection('customSteps')
.add({'customSteps': customSteps});
customSteps集合具有文档,这些文档包含customSteps字段以存储customStep数组。但是,此代码将空数组推送到Firestore。我该怎么解决?
答案 0 :(得分:0)
要将对象推送到Firestore,您需要将对象转换为map,将此函数添加到您的类中:
Map<String, dynamic> toMap() {
return {
'yourField1': yourValue1,
'yourField2': yourValue1,
};
}
要推送customSteps列表,您需要将所有对象转换为map,可以使用以下方法进行操作:
static List<Map> ConvertCustomStepsToMap({List<CustomStep> customSteps}) {
List<Map> steps = [];
customSteps.forEach((CustomStep customStep) {
Map step = customStep.toMap();
steps.add(step);
});
return steps;
}
答案 1 :(得分:0)
在Firebase上,您无法在const GraphqlQuery = <T, TVariables = OperationVariables>(props: PropsType) => {
const { query, variables, children, user, ...rest } = props;
if (!user) return null;
return (
<Query<T, TVariables>
query={query}
variables={variables}
context={{
headers: {
"X-User-Id": user.id,
},
}}
{...rest}
>
...
</Query>
);
};
const mapStateToProps = ({ user }: { user: IUserState }) => ({
user,
});
export default connect(
mapStateToProps,
{}
)(GraphqlQuery);
内保存自定义模型
您实际上可以做的是创建一个Document
和一个CustomStep
集合。
在您的CustomSteps
内,您可以创建CustomSteps Document
的{{1}},这实际上是通往不同array
文档的路径。
这意味着每次在Firestore上创建Reference
并将其用作引用时都会获取ID。
希望有帮助!
答案 2 :(得分:0)