如何解决如何使用 flutter/dart 在 parse(Back4App) 中获取关系数据?
我解析了 2 个表:User
和 Location
。位置具有与 userId
相关的列名称 User's ObjectId
。我在 Location
中手动添加了关系只是为了测试。但是我在获取位置时遇到问题。
|objectId|name |
|--------| --- |
|abc123 | Sta |
|def456 |Danny|
位置
|objectId| geopoint | userId |
|--------|----------|---------------|
|someid |12.3,45.6|view relation|
var locationObject = ParSEObject('Location');
var userObject = ParSEObject('User');
var queryUser = QueryBuilder(userObject)
..whereValueExists('objectId',true);
var queryLoc = QueryBuilder(locationObject)
..whereMatchesQuery('userId',queryUser);
var result = await queryLoc.query();
print(result.result); // output: null
解决方法
您可以通过 id 手动查找用户:
final queryLoc = QueryBuilder(locationObject)
..equals('userId',userId); // add your `userId`.
此外,您可以使用 Parse Flutter SDK 中的 login
方法在应用程序启动时对 Parse 进行身份验证(第一次您需要向您的用户请求登录名和密码,其他方式您可以从缓存中提取 Parse 用户).
注册(您应该添加您的 user
、password
和 email
参数):
final user = ParseUser().create('user','password','user@email.com');
final authResponse = await user.login();
if (response.success){
user = response.result;
} else {
// Login error,handle this
}
登录:
final user = ParseUser.currentUser();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。