No, that wouldn't work. Here is the rundown of the possible options:
- `ChoiceField`. Doesn't work because we want to accept slugs and convert them to integers. regular `ChoiceField` doesn't help us with that, it just validates stuff but doesn't do the conversion from slugs to integers and vice-versa.
- `SlugChoiceField`. It was created to deal with regions and carriers constants, which have nice objects with `id` and `slug` values, which isn't the case here.
- `ReverseChoiceField`. It's like a `ChoiceField`, but it actually uses the slugs as input and output, converting them to the corresponding integers behind the scenes.

If I used `amo.STATUS_CHOICES_API_LOOKUP.items()` with a regular `ChoiceField` I would only accept the slugs but never do the conversion to integers. Which is why I created `ReverseChoiceField`, and gave it `amo.STATUS_CHOICES_API` - the keys in that dict serve as the real value stored in db, and the values are the strings accepted as input and given as ouput.

Hopefully this makes sense :) Maybe `ReverseChoiceField` is not a good name ? Maybe the docstring wasn't clear enough ? I'm open to comments/suggestions.