This will fail silently if ``key == "ooba"`` and  ``ignore_fields='foobar'``.  Better to do:

    if ignore_fields is None:
        ignore_fields = []

Before hand, then the exception will make more sense also.