Hi Alireza,

Yes, that did the trick!

Thank you,
Paulo

On Thursday, June 14, 2012 2:26:46 PM UTC+1, Alireza Savand wrote:
>
>
>
> On Thursday, June 14, 2012 3:04:54 PM UTC+4, Paulo Almeida wrote:
>>
>> Hi,
>>
>> I would like to access the request.user in a ModelAdmin function, so I 
>> can filter the results of a query based on the logged in user. I have these 
>> models:
>>
>> class Speaker(models.Model):
>>     name = models.CharField(max_length=50)
>>     endorsements = models.ManyToManyField(User,
>>                                                                    
>>  through="Endorsement")
>>
>> class Endorsement(models.Model):
>>     speaker = models.ForeignKey('Speaker')
>>     user = models.ForeignKey(User)
>>     endorsed = models.NullBooleanField()
>>
>>     class Meta:
>>         unique_together = ("speaker", "user")
>>
>> User comes from django.contrib.auth.models. In the ModelAdmin, I would 
>> like to have this:
>>
>> class SpeakerAdmin(admin.ModelAdmin):
>>     def is_endorsed(self, obj):
>>         
>>         endorsement = Endorsement.objects.get(speaker=obj,
>>                                                               
>> user=request.user)
>>         return endorsement.endorsed
>>
>> So then I could just add "is_endorsed" to the list_display variable to 
>> have the endorsement status for that user in the Speaker list, in the Admin 
>> site. Of course, this doesn't work because request isn't available in the 
>> is_endorsed function. I googled around and saw solutions for similar 
>> problems involving overrides of save_model, queryset or 
>> formfield_for_manytomany, but I couldn't adapt them to list_display, 
>> because I'm creating a function in the ModelAdmin, where I only know how to 
>> pass self and obj. Suggestions?
>>
>> Thanks,
>> Paulo Almeida
>>
>
> I think you looking for this app
> http://pypi.python.org/pypi/django-cuser/
>
> Small piece of middleware to be able to access authentication data from
>  everywhere in the django code.
>
>
> Right ?
>
>
On Thursday, June 14, 2012 2:26:46 PM UTC+1, Alireza Savand wrote:
>
>
>
> On Thursday, June 14, 2012 3:04:54 PM UTC+4, Paulo Almeida wrote:
>>
>> Hi,
>>
>> I would like to access the request.user in a ModelAdmin function, so I 
>> can filter the results of a query based on the logged in user. I have these 
>> models:
>>
>> class Speaker(models.Model):
>>     name = models.CharField(max_length=50)
>>     endorsements = models.ManyToManyField(User,
>>                                                                    
>>  through="Endorsement")
>>
>> class Endorsement(models.Model):
>>     speaker = models.ForeignKey('Speaker')
>>     user = models.ForeignKey(User)
>>     endorsed = models.NullBooleanField()
>>
>>     class Meta:
>>         unique_together = ("speaker", "user")
>>
>> User comes from django.contrib.auth.models. In the ModelAdmin, I would 
>> like to have this:
>>
>> class SpeakerAdmin(admin.ModelAdmin):
>>     def is_endorsed(self, obj):
>>         
>>         endorsement = Endorsement.objects.get(speaker=obj,
>>                                                               
>> user=request.user)
>>         return endorsement.endorsed
>>
>> So then I could just add "is_endorsed" to the list_display variable to 
>> have the endorsement status for that user in the Speaker list, in the Admin 
>> site. Of course, this doesn't work because request isn't available in the 
>> is_endorsed function. I googled around and saw solutions for similar 
>> problems involving overrides of save_model, queryset or 
>> formfield_for_manytomany, but I couldn't adapt them to list_display, 
>> because I'm creating a function in the ModelAdmin, where I only know how to 
>> pass self and obj. Suggestions?
>>
>> Thanks,
>> Paulo Almeida
>>
>
> I think you looking for this app
> http://pypi.python.org/pypi/django-cuser/
>
> Small piece of middleware to be able to access authentication data from
>  everywhere in the django code.
>
>
> Right ?
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/django-users/-/yJUcQhE-278J.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to