Validation when displaying already existing element
Errors are shown for the "data" parameter ( or instance if it's a modelform ), not "initial". You need to pass the original values as the data parameter if you want to display errors.
And then just use the usual validation methods ( raising ValidationError in clean_* methods , field specific validation, etc. ). I wouldn't mess up with the error dictionary, it's an internal API.
When editing an already existing element in Django, I would like to show ValidationErrors for fields that are not good (because somewhere else something changed). I've tried to overload the __init__ of the form and set form_obj.errors['__all__']="something" but it doesn't display any errors. How should I approach this?