In my Django project, I have various users created by Django\'s built-in authentication system. Each user can create their own instances of the App model. I would
I would put the form submission in a different view and write a custom decorator, which you could also use for similar issues.
I would also return a 404 instead of access denied. You might not want to show users that you are protecting something.