Class Based Views : filter items by users

2017-07-04 Thread Nabil BOUDERBALA


As you can see from my template below, i have a list of users who posted 
items and I would like to get the list of items for each user. However, 
using the view below I only get the list for the current logged user. How 
can I modify my views.py so that it filters items for each one of the 
listed users?

my template.html


{% if user %}

{% for user in user_list %}
{% if user.item_set.count > 0 %}

{{ user.username }} [{{ user.item_set.count }}]

{% endif %}
{% endfor %}

{% endif %}


*In addition the DCF proxy user class in the models.py is below :*

class DcfUser(User):class Meta:
proxy = Truedef allow_add_item(self):
if self.item_set.count() > settings.DCF_ITEM_PER_USER_LIMIT:
return False
else:
return True

*class based views.py*

class UserItemsView(ListView):
template_name = 'dcf/template.html'
def get_queryset(self):   return Item.objects.filter()

Thank you

-- 
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+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@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/53b06618-1de5-445e-a0ed-095ffc3dcd75%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Class Based Views : filter items by users

2017-07-07 Thread Nabil BOUDERBALA
Thank you, I have updated the template accordingly.
Regardin the views, I solved the issue through the function below :

def itemuserfunc(request, user):
template = get_template('dcf/user_item_list_noedit.html')
profile_owner = DcfUser.objects.filter(username=user)  # Assuming you have 
entry in your database
item_list = Item.objects.filter(user = profile_owner)
return template.render(Context({'item_list': item_list}))


On Thursday, July 6, 2017 at 11:56:06 AM UTC+2, Melvyn Sopacua wrote:
>
> Please show all relevant bits of the code (user_list is not part handed 
> off to the template).
>
>  
>
> But you could start but not naming 2 different variables inside 
> eachother's scope identical.
>
>  
>
> On Tuesday 04 July 2017 09:36:51 Nabil BOUDERBALA wrote:
>
>  
>
> > {% if user %}
>
> > {% for user in user_list %}
>
>  
>
> -- 
>
> Melvyn Sopacua
>

-- 
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+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@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/8c470566-95e3-4f00-826e-6abd7c38d3a8%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.