До сих пор я всегда использовал restful_authentication, с несколькими твиками до сих пор все было нормально, но мне действительно нужно поиграть с Authlogic.
Что касается ответов других, я вижу их точку зрения, простота часто очень полезна, но я не согласен с тем, что правильный ответ заключается в том, чтобы поместить всю эту информацию в вашу пользовательскую модель. Я бы рассмотрел вашу заявку в целом, сколько моделей у вас, вероятно, будет в общей сложности, скольким из них понадобятся адреса, например? Сразу же мне очень хотелось бы перенести адрес хотя бы в отдельную модель.
Лично я считаю, что лучше начинать с нормализованных таблиц, чем, возможно, оценивать денормализацию, если вы можете оправдать увеличение производительности. Помните, что вы, вероятно, будете часто загружать пользовательский объект, если вы достигнете высокой скорости входа в систему, что раздутая модель может стать источником для улучшения, что позже будет сложнее сделать, чем сейчас.
Как и в большинстве случаев, это компромисс, на который нужно ответить при каждом наборе обстоятельств. Я надеюсь, что другое понимание пригодится, я просто думаю, что вы должны рассмотреть и другую сторону медали, надеюсь, это поможет.