Zmiana HTMLa w pliku .js.erb

Witam
Chcę dynamicznie zmienić zawartość prawej kolumny (div id=col2) w jQuery przy logowaniu.
W pliku sessions_controller mam:

[code=ruby]class SessionsController < ApplicationController
def new
@title = t(‘app.titles.new_session’)
end
def create
@user = User.authenticate(params[:session][:email], params[:session][:password])
respond_to do |format|
format.html {
if @user.nil?
flash.now[:error] = t(‘activerecord.attributes.session.error’)
@title = t(‘app.titles.new_session’)
render ‘new’
else
sign_in @user
redirect_to(@user)
end
}
format.js {
unless @user.nil?
sign_in @user
end
}
end

end
def destroy
respond_to do |format|
format.html {
sign_out
redirect_to root_path
}
end
end
end[/code]
W create.js.erb mam:

<% unless @user.nil? %> $(function(){ alert("gg"); $("div#col2").html("<%= render :partial => 'logged_in' %>"); return false; }); <% else %> $(function(){ alert("Logowanie nieudane"); return false; }); <% end %>
Kiedy w formularzu do logowania mam złe dane, akcja reaguje poprawnie i wyświetla okienko z wiadomością. Jednak kiedy logowanie się powiedzie, w Firebugu widzę, że serwer w odpowiedzi zwraca poprawną część skryptu, natomiast nie jest ona wykonywana w żaden sposób, jakby była plaintextem. Obie odpowiedzi oczywiście (zarówno przy poprawnym jak i niepoprawnym logowaniu) mają w nagłówku text/javascript. Może całkiem źle podchodzę do zagadnienia?

Może być tak, że ten renderowany partial, to zrobić tak <%= escape_javascript(render :partial => “logged_in”)%>

Właśnie zastanawiałem, się czy tego nie użyć. Teraz działa jak trzeba, dzięki!