On Wed, Aug 17, 2011 at 8:54 AM, andrepar <[email protected]> wrote:
> How can apply DRY to the following lines?
>
> def formfield_for_foreignkey(self, db_field, request, **kwargs):
> if db_field.name == "field1":
> kwargs["queryset"] =
> Field1.objects.filter(owner=request.user)
> return super(MyModelAdmin,
> self).formfield_for_foreignkey(db_field, request, **kwargs)
> if db_field.name == "field2":
> kwargs["queryset"] =
> Field2.objects.filter(owner=request.user)
> return super(MyModelAdmin,
> self).formfield_for_foreignkey(db_field, request, **kwargs)
>
> ...
>
> Andrea
>
Use a factory:
def formfield_for_foreignkey(self, db_field, request, **kwargs):
factory = {
'field1': Field1.objects,
'field2': Field2.objects,
}
kwargs['queryset'] = factory[db_field.name].filter(owner=request.user)
return super(MyModelAdmin,
self).formfield_for_foreignkey(db_field, request, **kwargs)
--
You received this message because you are subscribed to the Google Groups
"Django users" group.
To post to this group, send email to [email protected].
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.