Ваш рабочий процесс будет прост в реализации, я буду заниматься загрузкой ресурсов внутри отдельного контроллера, так как вы, возможно, захотите расширить его позже, и вы не хотите, чтобы логика загрузки загромождала ваш контроллер Posts. Вы можете использовать некоторые из драгоценных камней, которые есть у Ruby для загрузки изображений, например:
Как только вы загрузите изображение, вы можете перейти к его интеграции с вашими сообщениями. Установите отношения между вашим контроллером Uploads и контроллером Posts. Я бы использовал отношение has_and_belongs_to_many , которое позволило бы вам записывать, какие изображения используются в каких сообщениях.
Тогда остается только создать форму на странице создания сообщений для загрузки изображений. Есть много способов сделать это, но я бы начал с простой статической формы в качестве доказательства концепции вначале, а затем перешел бы к использованию AJAX ( текстовая версия ) и некоторому JavaScript сделать форму загрузки более удобной для пользователя.
После того, как вы приступите к работе, вы можете внести другие изменения, включая добавление поддержки механизма разметки, такого как Markdown или Textile, который упростит добавление стиля в сообщения и, возможно, улучшит поддержку добавления изображений в тело сообщения.
В любом случае, это просто концепции высокого уровня, и я надеюсь, что их достаточно, чтобы указать вам правильное направление. Если вам нужна помощь с основами, не стесняйтесь искать в StackOverflow, и вы можете найти похожие вопросы, или если вам нужны дополнительные разъяснения, вы можете оставить комментарий к этому сообщению.