Вы на правильном пути.
В своей миграции используйте метод t.references. Например:
t.references :user
Это создаст столбец user_id в вашей базе данных.
Тогда в вашей модели вы используете:
belongs_to :user
Если вы хотите использовать в своей модели has_xxx: widgets, для таблицы базы данных виджетов требуется столбец what_id.
Rails не вносит никаких изменений в вашу миграцию в зависимости от вашей модели. AFAIK, Rails никогда не изменит вашу миграцию после ее создания. Вам придется кодировать эти отношения вручную.