Description
This is an idea we had with @bellini666, in this PR #3787 we changed where we handle pre-execution errors, but we were thinking of also changing how we do that.
I think raising an exception is more Pythonic, but it also messes a bit with how the code works since we handle the execution results at the schema level right now, we can raise the PreExecution exception (that's handled by the websocket handler), so there's a bit of disconnect there.
Maybe we can refactor the code more where the handling of the execution result is done on the view instead?
This is the current code
Not sure what's best, for now I'll leave this issue open, we can figure out the details later 😊
TODO for reference: https://github.com/strawberry-graphql/strawberry/pull/3787/files#diff-82402246462092688dc1332e33d4d491413ace2429a250131df5880be71fbf17R276