Я пытаюсь создать частную функцию обмена сообщениями на мое приложение между двумя пользователями, и я бегу в неприятностиRails Формы для Личные сообщения
Во-первых, здесь schema.rb
create_table "conversations", :force => true do |t|
t.string "conversation_subject
end
create_table "messages", :force => true do |t|
t.string "content"
t.integer "user_id"
t.integer "conversation_id"
end
create_table "participants", :force => true do |t|
t.integer "conversation_id"
t.integer "user_id"
end
conversations has_many :messages, :participants
users has_many :messages, :participants
Форма для начала разговор:
<%= form_for @conversation do |f| %>
<div class="field">
<strong>Subject</strong><br />
<%= f.text_field :conversation_subject %>
</div>
<div class="actions">
<%= f.submit "Submit" %>
</div>
<% end %>
в приведенной выше форме, я хотел бы иметь
<%=f.text_area :content %>
для сообщения также, чтобы одним щелчком мыши создавался разговор и сообщение, но я не мог использовать вложенные атрибуты здесь из-за user_id (может быть,
вы можете? но из моего понимания вы не можете)
- Есть ли способ обрабатывать атрибуты из двух разных моделей в одной форме без использования вложенных атрибутов?
примечание Я знаю user_id может быть взят из Послания и до сих пор имеют функциональную систему обмена сообщениями теоретически, но я думал, что для того, чтобы связать каждое сообщение с отправителем, было бы необходимо, чтобы он включен
- Только обходное решение, которое я мог бы подумать, это добавить и добавить_контент_сообщения и передать его в сообщение, когда диалог создается впервые. Это все, что я мог придумать с этим дизайном db. Является ли это изначально ошибочным?
Любая помощь будет замечательной. Я начинающий рельс.
Благодаря
Привет Кайл, спасибо. Я рассмотрю это, но как вы думаете, вы могли бы помочь мне понять, как его создать? Я никогда не видел этого раньше – railslearner