на странице всегда будут обе формы, и их в любом случае нужно будет инициализировать перед выводом страницы. Так что самый простой способ в данном случае - разделить заполнение на 2 разные страницы для юриков и физиков
чтобы сделать три типа пользователей (разные данные, а не пермишны) лучше всего сделать через три новых модели путем наследования от простого юзера, но как сдделать выбор типа юзера, чтобы он сам себе его определял?
лучше сделать одну модель с общими данными + поле type, а все остальное вынести в 1к1 модели. можно еще заморочиться с GenericForegingKey, но он делает кучу лишних запросов.