Hi, there are several flaws in your code.

On Mon, 13 Apr 2015 04:12:55 -0700 (PDT)
makayabou <makaya...@gmail.com> wrote:

> Hello,
> thanks for reply,
> of course attribute name was defined, I just ommited to past it!
> 
> Here's code:
> 
> [code]
> #In models.py:
> 
> 
> class PC(models.Model):
>     def users(self):
>         pc = self.user_set.all()
>         for o in pc:
>             return o.__unicode__

Here you return first (only first) __unicode__ method of "o" object.
Wild guess is that you want to do something like this:

def users(self):
    return u', '.join([unicode(u) for u in self.user_set.all()])  ## Return 
comma separated list of users

>     def __unicode__(self):
>         return 'pc '+unicode(self.id)+' - '+self.os()

You declare unicode method, yet your return is a bytestring. You should put 
u-prefix before texts.

> 
> class User(models.Model):
>     name=models.TextField()
>     mypc = models.ForeignKey(PC)
>     def __unicode__(self):
>         return self.name       
> 
> 
> #In admin.py:
> 
> 
> class PcAdmin(admin.ModelAdmin):
>     list_display = ('users','id')
> [/code]
> 
> Still have this weird print: 
> <bound method User.__unicode__ of <User:  Jean Dubois>>
> 

That's correct output - first object and it's __unicode__ method - that's what 
you return in your code.

> instead of:
> Jean Dubois
> 
> thank you for help
> 
> Le lundi 13 avril 2015 07:57:00 UTC+2, Avraham Serour a écrit :
> >
> > Well, your class User doesn't have an attribute name you are using on the 
> > method __unicode__, you should define and set the attribute name with 
> > something like a textfield
> > On Apr 13, 2015 3:21 AM, "makayabou" <maka...@gmail.com <javascript:>> 
> > wrote:
> >
> >> Hello,
> >>
> >> Sorry for the previous send unattended...
> >>
> >> I have problems trying to print values of a QUerySet Object in Admin View.
> >>
> >> In admin view, I would like to get a clear list of results,
> >>> as defined in __unicode__ from class User.
> >>> Instead, I get:
> >>>
> >>> <bound method User.__unicode__ of <User:  Jean Dubois>>
> >>>
> >>> I just need Jean Dubois..
> >>>
> >>> Here's the code:
> >>>
> >>> #In models.py:
> >>>
> >>>
> >>> class PC(models.Model):
> >>>  def users(self):
> >>>  pc = self.user_set.all()
> >>>  for o in pc:
> >>>  return o.__unicode__
> >>>          def __unicode__(self):
> >>>                  return 'pc '+unicode(self.id)+' - '+self.os()
> >>>
> >>>
> >>>
> >>>
> >>> class User(models.Model):
> >>>     mypc = models.ForeignKey(PC)
> >>>     def __unicode__(self):
> >>>         return self.name       
> >>>
> >>>
> >>> #In admin.py:
> >>>
> >>>
> >>> class PcAdmin(admin.ModelAdmin):
> >>>     list_display = ('users','id')
> >>>
> >>>
> >> Thanks for your help. 
> >>
> >> -- 
> >> 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 <javascript:>.
> >> To post to this group, send email to django...@googlegroups.com 
> >> <javascript:>.
> >> Visit this group at http://groups.google.com/group/django-users.
> >> To view this discussion on the web visit 
> >> https://groups.google.com/d/msgid/django-users/61ec8171-77c5-4bba-9274-8f209422d15e%40googlegroups.com
> >>  
> >> <https://groups.google.com/d/msgid/django-users/61ec8171-77c5-4bba-9274-8f209422d15e%40googlegroups.com?utm_medium=email&utm_source=footer>
> >> .
> >> For more options, visit https://groups.google.com/d/optout.
> >>
> >
> 
> -- 
> 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 http://groups.google.com/group/django-users.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/django-users/58ba4264-a9b1-4a7e-a86c-cc9d145deaab%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.


-- 
Jani Tiainen

-- 
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 http://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/20150413142244.252d5d6d%40jns42-l.w2k.keypro.fi.
For more options, visit https://groups.google.com/d/optout.

Reply via email to