Problems Providing Javascript in Rails

Here's the corresponding controller code:

if @song.update_attributes(params[:song]) respond_to do |format| format.js { render :action => 'success' } end else 

Here is what in success.js.erb :

 $("#song_updated_at").val( "<%= escape_javascript @song.updated_at %>" ) 

Here is the error I get:

 ActionView::TemplateError ($_ value need to be String (nil given)) on line #1 of app/views/songs/success.js.erb: 1: $("#song_updated_at").val( "<%= escape_javascript @song.updated_at %>" ) app/views/songs/success.js.erb:1 app/controllers/songs_controller.rb:52:in `update' app/controllers/songs_controller.rb:50:in `update' 

Thoughts?

+1
source share
1 answer

You need to_s your updated_at because escape_javascript expects a string. updated_at returns a ActiveSupport::TimeWithZone .

Hope this helps.

+2
source

Source: https://habr.com/ru/post/1438779/


All Articles