Делаешь запрос. Получаешь данные.
Проверяешь.
Если пользователь первый раз у тебя появился, то рендеришь из твоего экшена ему форму, например:
render: 'путь до вьюхи/again_form'
В этой форме он вводит еще данные.
Создаешь экшен принимающий эту форму и принимаешь данные. И так далее. Рендери ему хоть тысячу вьюх.
Если он ушел на пол пути до того, как заполнил все что нужно, можно повесить проверку например в application_controller на данные текущего юзера и заполнено ли у него все или нет. Исходя из логики рендеришь нужную форму.