Example #1
0
    def _get_related_fields_by_name(self, model):
        related_fields = {}

        if hasattr(model, '_meta'):
            field_names = get_all_field_names(model)

            for field_name in field_names:
                field = get_field_by_name(model, field_name)
                if (not field.auto_created or field.concrete) and field.rel:
                    related_fields[field.name] = field
        return related_fields
Example #2
0
 def _get_model_fields(self, obj=None):
     """
     Get _all_ of the fields on a Django model
     """
     if not obj:
         obj = self.Meta.model
     ## Django returns non-fields, like "id", so we filter them out
     field_names = get_all_field_names(obj)
     real_fields = []
     for field_name in field_names:
         if hasattr(obj, field_name):
             real_fields.append(field_name)
     return real_fields