Итак, я пытаюсь внедрить систему обмена сообщениями в свое приложение и не собираюсь использовать какие-либо драгоценные камни. Я видел большинство из них и умею ими пользоваться. Но ради обучения я хочу узнать, как это работает, создать его с нуля и иметь возможность настраивать его так, как я хочу.
Я искал учебник, но нет никакого учебника или какой-либо конкретной информации, кроме; это -> http://.novawave.net/public/rails_messaging_tutorial.html, но к сожалению, ссылка не работает или это -> потоковый личный обмен сообщениями Rails, но я все еще не могу обернуть голову вокруг всего.
Так что надеюсь, что эта тема послужит ориентиром для других.
Итак, основываясь на этом потоке потоковый обмен сообщениями Rails, это то, что у меня есть, включая определения столбцов. Но у меня проблемы с логикой добавления нескольких пользователей в беседу. То, как я это вижу:
- Нажмите «Отправить сообщение», которое вызовет новый объект беседы.
- Добавьте тему и выберите пользователей, которых я хочу видеть в беседе ‹ — здесь становится мутно
- внизу без той же формы без ajax, я думаю, я мог бы отобразить форму сообщения, которая отправит текст?
Итак, как мне поместить несколько идентификаторов пользователей в столбец users_id таблицы бесед? Есть предложение использовать гем 'act_as_taggable' из этой темы -> потоковый обмен сообщениями Rails в? Если да, то как база данных узнает, что она должна выбрать всех этих пользователей в определенном объекте диалога.
class Conversation < ActiveRecord::Base
#columns -> :subject, :users_id
has_many :messages
has_many :participants
has_many :users, :through => :participants
end
class Message < ActiveRecord::Base
#columns -> :conversation_id, :sender_id, :read
belongs_to :conversation
end
class Participant < ActiveRecord::Base
#columns -> :user_id, :conversation_id
belongs_to :conversation
belongs_to :user
end
class User < ActiveRecord::Base
has_many :conversations
has_many :participants
end