asifpy / django-crudbuilder

Generic CRUD implementation in Django
https://django-crudbuilder.readthedocs.org/en/latest/index.html
Apache License 2.0
193 stars 67 forks source link

property as displayable detail doesn't work #28

Closed wadevries closed 8 years ago

wadevries commented 8 years ago

My model:

class Client(models.Model):
    ...
    def get_entity(self):
        # return some other model
    entity = property(entity)

I want entity to be rendered on the detail page, but instead I get

File "/Users/wouter/dev/envs/analyzer/lib/python2.7/site-packages/crudbuilder/templatetags/tags.py" in get_verbose_field_name
  51.     return instance._meta.get_field(field_name).verbose_name.title()

File "/Users/wouter/dev/envs/analyzer/lib/python2.7/site-packages/django/db/models/options.py" in get_field
  582.             raise FieldDoesNotExist('%s has no field named %r' % (self.object_name, field_name))

Exception Type: FieldDoesNotExist at /crud/customers/clients/5/
Exception Value: Client has no field named 'entity'

I guess this is because the get_verbose_field_name template filter does not support properties (or 'fake' fields), even though get_model_fields does.