How to include a Where clause for each query on django?

16 views
Skip to first unread message

Fellipe Henrique

unread,
Jun 14, 2018, 10:10:19 AM6/14/18
to Django Users
Hello..


Each model of my app, has a field named  user... so, I need to filter any query on that model user=current_user...

I already do that, but manually for each model, on a view.. and I like to do that directly on some where when I try to use a query, any record will be filtered.....


Can I do that? where is the best place to do that?

Thanks! 


Matthew Pava

unread,
Jun 14, 2018, 10:14:08 AM6/14/18
to django...@googlegroups.com

Just create a custom manager and pass in the current user to it.

https://docs.djangoproject.com/en/2.0/topics/db/managers/

 

class MyCustomManager(models.Manager):

def with_current_user(current_user):

                                return self.filter(user=current_user)

 

In y our model:

 

class MyModel:

                objects = MyCustomerManager()

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users...@googlegroups.com.
To post to this group, send email to django...@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CAF1jwZFc_dSyWQSDXJ-qaRgCvzoPYwK%2BRowd91aGCj8rnEnu1w%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages