我需要提供有关多对多关系的 REST 数据。我一直在玩 web2py 的可爱 parse_as_rest 功能,但不能完全让多对多的东西工作。
例如,让我们以标准用户和组为例。
表:
- 用户
- ID
- 用户名
- 团体
- ID
- 团队名字
- 会员资格
- ID
- 用户身份
- group_id
我需要使用什么模式来提供一个 url,它将为我提供用户所属的所有 group_name?
patterns = [
"/user[user]",
"/user[user]/id/{user.id}",
"/user[user]/id/{user.id}/membership[membership.user_id]",
# This is the line that I can't make yet:
#"/user[user]/id/{user.id}/membership[membership.user_id]/group<WHAT GOES HERE>",
"/group[group]",
"/group[group]/id/{group.id}",
]
parser = db.parse_as_rest(patterns, args, vars)
使用上面未注释的行,我可以访问这些网址:
- .../用户
- .../用户/ID/1
- .../user/id/1/membership
- .../团体
- .../group/id/3
URL #3 显示了我所有的成员资格,然后我可以对 URL #5 进行多次单独调用以获取 group_name 值,但必须有一种方法可以通过一次调用来完成此操作。
帮助我 StackOverflow!你是我唯一的希望。
编辑:修复了错误的剪切和粘贴。