如何将帖子的视图限制为仅作者

How to restrict view of posts to the author only

我尝试了一款 Reddit 应用程序,可以在其中查看帖子和评论。 我的麻烦是让用户 t 成为唯一一个查看帖子而不是 public 视图(每个人都看到的所有帖子) 我该如何限制呢? 我试过了:

@auth.requires_signature()
def view_posts_by_author():
    ...code
    return locals()

但这于事无补

Rgards

您可以对帖子查询进行编码,使其仅 returns 记录由当前登录用户创作的内容。假设帖子 table 包含一个 author 字段,它是对 auth_user table 的引用,您可以这样做:

@auth.requires_login()
def view_posts_by_author():
    posts = db(db.post.author == auth.user_id).select()
    return dict(posts=posts)

假设您有一个 post table 类似的东西:

db.define_table('post',
                Field('author', 'reference auth_user'),
                ...)