On Jun 19, 5:19 pm, RichardH <[EMAIL PROTECTED]> wrote: > This is probably more of a Python question than django, but django > provides the context for my problem. > > Requirement: I have got a user defined list of field names (e.g. > field_names=['id','name','description',...]) and I want to pass this > list to the value() method on a QuerySet thereby returning a subset of > the model fields (as a dictionary). > > Problem: value() takes individual field names as parameters (e.g. > value('id', 'name,' description'), not a list of field names (e.g. > value(field_names) ). Is there a simple way of passing the list of > field names to the value() method or is there an alternative strategy > for returning the subset of fields from the QuerySet? > > Hopefully this is obvious to someone, but it has me stumped. > > Richard
Not obvious, and it's stumped me before in various Python projects, so I decided to search around for it. Finally found it at http://mail.python.org/pipermail/python-list/2005-March/312568.html. That post says, in short, that one can pass a list of values to a function that expects those values as variable arguments by simply placing an asterisk before the list (or tuple) in the function input. For example: >>> def bob(*args): ... for arg in args: ... print arg ... >>> sally = ['june', 'andy', 'frank'] >>> bob(sally) ['june', 'andy', 'frank'] >>> bob(*sally) june andy frank >>> I tried so many ways around this problem, and I knew Python, by it's nature, had to have a simple solution. Glad to have found it. HTH, Gabe --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---