def get_fields(brain_or_object):
    """Get the list of fields from the object

    :param brain_or_object: A single catalog brain or content object
    :type brain_or_object: ATContentType/DexterityContentType/CatalogBrain
    :returns: List of fields
    :rtype: list
    """
    obj = get_object(brain_or_object)
    # The portal object has no schema
    if is_root(obj):
        return {}
    schema = get_schema(obj)
    if is_dexterity_content(obj):
        names = schema.names()
        fields = map(lambda name: schema.get(name), names)
        schema_fields = dict(zip(names, fields))
        # update with behavior fields
        schema_fields.update(get_behaviors(obj))
        return schema_fields
    return dict(zip(schema.keys(), schema.fields()))
def get_fields ( brain_or_object ) : obj = get_object ( brain_or_object ) if is_root ( obj ) : return { } schema = get_schema ( obj ) if is_dexterity_content ( obj ) : names = schema . names ( ) fields = map ( lambda name : schema . get ( name ) , names ) schema_fields = dict ( zip ( names , fields ) ) schema_fields . update ( get_behaviors ( obj ) ) return schema_fields return dict ( zip ( schema . keys ( ) , schema . fields ( ) ) )
Get the list of fields from the object

    :param brain_or_object: A single catalog brain or content object
    :type brain_or_object: ATContentType/DexterityContentType/CatalogBrain
    :returns: List of fields
    :rtype: list