Dave Castellano wrote in post #1106346:
> Robert Walker wrote in post #1106231:
>> Dave Castellano wrote in post #1106220:
>>> Hi,
>>>
>>> Still learning rails and have a basic question.  Can I pass any variable
>>> thru the params hash to an action?
>>
>> You can do that the same way you would do it in HTML, use a hidden form
>> field. Rails has a helper for that:
>>
>>
> 
http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-hidden_field
>
> I did try that.  For some reason update action does not see
> params[:in_progress] == "true" as true.  It is 'true' in params hash
> though.  Any other thoughts?  Been trying to figure this out all week.
>
> In view:
> <%= f.submit "Add image/video", :id=> 'add_image_commit' %>
>
> jQuery sets hidden field "in_progress" to true:
> $("#add_image_commit").on "click", (event) ->
>     $("#in_progress").val("true")
>
> Hidden field IS set to true.
>
> In controller:
>   def update
>     @question = Question.find(params[:id])
>     if params[:in_progress] == "true"
>       @question.attributes = params[:question]
>       if @question.save(:validate => false)
>         redirect_to gallery_path(session[:minisection_id]), id:
> "image_gallery"
>       end
>     else.....
>
> Params hash:
>   in_progress: 'true' commit: Add image/video _wysihtml5_mode: '1'
> action: update controller: questions

Got it!

if params[:question][:in_progress] == 'true'

Thanks.

-- 
Posted via http://www.ruby-forum.com/.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to