Following the instructions in Chapter 7 (Ajax and Web2) of Simply Rails 2, I have updated the show.html.erb (under /views/stories/) votes_Controller.rb and create.rjs (under /views/votes/). When I click on the shove it button, I don't see any Ajax effects (but the vote is being cast in the database), when I read the response text using (Firebugs console) all I see is the following with full trace:

Showing <i>votes/create.js.rjs</i> where line <b>#1</b> raised:
<pre><code>undefined local variable or method `page' for #&lt;ActionView::Base:0x4599df0&gt;</code></pre>

But interestingly when I update the create action of votes_controller.rb with the following code,

render :update do |page|
page.replace_html 'vote_score', "Score: #{@story.votes.size}"
page[:vote_score].visual_effect :highlight
end

I could see the ajax effect. It looks like because of some reason, the page object is not automatically sent to the create.js.rjs template file for processing the javascript.

I would appreciate it if somebody has an answer for this behavior.
Thanks in advance.