2014-01-08 2 views
0

Мне нужна помощь в создании кода, который позволит пользователю ответить на текущее сообщение и автоматически заполнить идентификатор получателя (из поля) идентификатором отправителей.Вставьте идентификатор получателя в форму сообщения

Так что, если я читаю сообщение от пользователя 1. Если я нажму reply, то поле from должно иметь идентификатор 1, заполненный как идентификатор получателя.

До сих пор я мог только заполнить идентификатор получателя на основе идентификатора пользователя, указанного в параметрах.

new.html.erb:

<% render @message %> 


<%= form_for @message, :url => user_messages_path(@user) do |f| %> 
<%= f.hidden_field :parent_id %> 
    <p> 
     To:<br /> 
     <%= f.text_field :recipient_id, :value => params[:user_id] %> 
    </p> 

     <p> 
     Subject:<br /> 
     <%= f.text_field :subject %> 
     </p> 
     <p> 
     Message<br /> 
     <%= f.text_area :body %> 
     </p> 

     <%= submit_tag "Send"%> 
<% end %> 

Контроллер:

def new 
    @new_message = Message.new 
    @message = Message.new 
    @message.parent_id = params[:parent_id] 
    end 

def reply 
     @reply_message = Message.new 
     @message = Message.new 
     @message.parent_id = params[:parent_id] 
    end 

ответ

0

не могли бы вы просто сделать:

<%= f.text_field :recipient_id, :value => @user.id %> 
+0

Это будет ссылаться только на текущего пользователя. Мне нужно, чтобы он отправил идентификатор отправителя из текущего сообщения. Идентификатор отправителя всегда должен использоваться как recipient_id при ответе на сообщение. – pwz2000

+0

Я думал, что это будет @ message.sender_id, но это оставляет форму пустой. – pwz2000

Смежные вопросы