Limit view of posts online

51 views
Skip to first unread message

Maurice Waka

unread,
Mar 23, 2015, 12:10:22 PM3/23/15
to web...@googlegroups.com
I tried a Reddit app where one can view posts and comments.
My trouble is getting the user t be the only one to view the Posts instead of public view(all postS seen by everyone)
How do I limit that?
I tried:
@auth.requires_signature()
def view_posts_by_author():
    ...code
    return locals()

but this does not help

Rgards

LoveWeb2py

unread,
Mar 23, 2015, 12:23:04 PM3/23/15
to web...@googlegroups.com
Hi Maurice,

You could do something like this:
   user_posts = db(db.user_posts.posted_by==db.auth_user.id).select(db.user_posts.ALL)

then show that data to just the user. Kind of hard to structure without seeing your database model.

Maurice Waka

unread,
Mar 23, 2015, 12:49:39 PM3/23/15
to web...@googlegroups.com
Hi loveweb2py.
Its just the same as the Reddit clone on the tutorials. All  wanted is to modify to have such posts to one user only.

--
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
---
You received this message because you are subscribed to a topic in the Google Groups "web2py-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/web2py/1RxdnkozPVE/unsubscribe.
To unsubscribe from this group and all its topics, send an email to web2py+un...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Ron Chatterjee

unread,
Mar 23, 2015, 12:55:59 PM3/23/15
to web...@googlegroups.com
you may want to try the "limitby" option. 

Jim S

unread,
Mar 23, 2015, 5:42:34 PM3/23/15
to web...@googlegroups.com
Wouldn't you do this instead?

user_posts = db(db.user_posts.posted_by==auth.user.id).select()

I agree, it would be better if we could see the code you have so far...

-Jim

Ron Chatterjee

unread,
Mar 23, 2015, 7:26:44 PM3/23/15
to web...@googlegroups.com
There are various ways to do it. I will put a breakpoint and start typing on the shell to figure out what you want to print. One way I can think of, 

db().select(db.user_posts.ALL,orderby=auth.user.id, limitby=(0, whatever_number_of_post_you_want_to_display);

Anthony

unread,
Mar 23, 2015, 8:28:03 PM3/23/15
to web...@googlegroups.com
On Monday, March 23, 2015 at 7:26:44 PM UTC-4, Ron Chatterjee wrote:
There are various ways to do it. I will put a breakpoint and start typing on the shell to figure out what you want to print. One way I can think of, 

db().select(db.user_posts.ALL,orderby=auth.user.id, limitby=(0, whatever_number_of_post_you_want_to_display);

He wants to display posts by a particular author, so simply limiting the number or records returned won't help. Instead, the query must specify the author.

Anthony

Anthony

unread,
Mar 23, 2015, 8:38:11 PM3/23/15
to web...@googlegroups.com


On Monday, March 23, 2015 at 12:10:22 PM UTC-4, Maurice Waka wrote:

Maurice Waka

unread,
Mar 23, 2015, 11:25:46 PM3/23/15
to web...@googlegroups.com
Thanks Anthony. I saw the answer you posted about 4 hrs ago.
Kind regards

Maurice Waka

unread,
Mar 23, 2015, 11:26:01 PM3/23/15
to web...@googlegroups.com
And thanks everybody too.
Reply all
Reply to author
Forward
0 new messages