我正在使用 https://github.com/dgrtwo/ParsePy 的ParsePy
来访问我们的解析数据库(它工作起来非常简单,对我来说几乎开箱即用,顺便说一句(。
我遇到的问题是想要从两个类中获取联接数据。
我们有一个链接到 User 类的 UserVote
类。
根据该示例,我看到我可以使用select_related
来获取User的属性以及UserVote的属性。
问题是我将如何访问相关对象的属性?
具体来说,用户有一个名为 username
的属性,我在任何地方都找不到vote
或vote.user
下。
我正在运行以下代码:
allvotes = UserVote.Query.all().select_related("User")
for vote in allvotes:
if hasattr(vote, 'username') or hasattr(vote, 'user') and hasattr(vote.user, 'username'):
print vote
在调试器中,我确实看到我获得了投票,并且有一个属性vote.user
但我发现没有像我预期的那样包含用户名的投票。
我没有得到上述代码的输出。
看到没有人回答,同时我让它按如下方式工作,不知道为什么我最初会遇到问题,可能某些 UserVote 记录没有用户指针。
这是我用来检索用户投票的查询 -
votes = UserVote.Query.filter(public=True,user__exists=True).order_by("-createdAt").select_related("user")
然后基本上我可以使用 vote.user.username 或任何其他用户属性