55502f40dc8b7c769880b10874abc9d0

I'm simply trying to insert: session[:user_id] along with a :message which is posted from a simple form.

#1 works out fine, but does not insert the :user_id of course.
#2 Also works, inserts the :user_id BUT also adds: "--- message:" into the database in front of whatever string was submitted.

Can someone explain to me whats going on, or how to resolve this issue, so I can simply insert my :user_id from the session into the database.
It's driving me crazy.

#1
@message= @bunker.messages.create(params[:message])

#2
@message = @bunker.messages.create(
  {:user_id=>session[:user_id],
  :message=>params[:message]}
   )

Refactorings

No refactoring yet !

B8ba61cc84ecb63c859435be28547dfb

steved

April 3, 2011, April 03, 2011 23:02, permalink

1 rating. Login to rate!
# Assume your Message class has columns user_id and message?
# create() takes a hash so presumambly:
params.inspect # => { "message" => {"message" => "msg from form"}, "other" => "params", ...}

# your #1 is really
@message= @bunker.messages.create(:message => "msg from form")

# your #2 is really
@message = @bunker.messages.create(
  {:user_id=>session[:user_id],
  :message=>{"message" => "msg from form"}}
   ) 
   
# what you want
@message = @bunker.messages.create(
  {:user_id=>session[:user_id],
  :message=>params[:message][:message]
   )
77abe2d7c77f313789e813ce1f2a907b

Ricky

May 1, 2011, May 01, 2011 20:03, permalink

No rating. Login to rate!

I'm impressed! You've managed the amolst impossible.

I'm impressed! You've managed the amolst impossible.

Your refactoring





Format Copy from initial code

or Cancel