My ajax stopped working when I switched to using respond_with. For my
Votes, I have the create action and the corresponding create.js.erb,
and respond_to :html, :js, :xml in the controller. Heres the log when
I try and create a vote:
Started POST "/stories/3-asdfasdf1111/votes" for 127.0.0.1 at Fri Jan
14 20:46:36 -0800 2011
Processing by VotesController#create as */*
Parameters: {"story_id"=>"3-asdfasdf1111"}
SQL (1.9ms) SHOW TABLES
SQL (2.0ms) SHOW TABLES
SQL (2.5ms) SHOW TABLES
User Load (2.4ms) SELECT `users`.* FROM `users` WHERE (`users`.`id`
= 3) LIMIT 1
CACHE (0.0ms) SELECT `users`.* FROM `users` WHERE (`users`.`id` 3) LIMIT 1
Story Load (2.4ms) SELECT `stories`.* FROM `stories` WHERE
(`stories`.`id` = 3) LIMIT 1
SQL (0.4ms) BEGIN
Vote Load (0.7ms) SELECT `votes`.`id` FROM `votes` WHERE
(`votes`.`user_id` = 3) AND (`votes`.`story_id` = 3) LIMIT 1
SQL (1.4ms) ROLLBACK
Completed in 1466ms
ActionView::MissingTemplate (Missing template votes/new with
{:locale=>[:en, :en], :handlers=>[:builder, :rjs, :rhtml, :erb, :rxml,
:haml], :formats=>[:html]}
in view paths "/Users/snibble/Projects/Ruby/storychan/app/views",
"/
Users/snibble/Projects/Ruby/storychan/vendor/plugins/white_list/app/
views"):
app/controllers/votes_controller.rb:16:in `create''
Rendered /opt/local/lib/ruby/gems/1.8/gems/actionpack-3.0.3/lib/
action_dispatch/middleware/templates/rescues/missing_template.erb
within rescues/layout (1.0ms)
The votes controller only has the create option:
def create
@story = Story.find(params[:story_id])
@vote = @story.votes.create(:user => current_user)
if @vote.errors.empty? && @vote.valid?
flash[:notice] = ''Successfully voted!''
else
flash[:error] = ''You already voted for that story!''
end
respond_with @vote
end
--
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en.
I forgot to mention that I''m using jQuery. I tried ajax using prototype in a test app and it worked, but when I use jQuery it doesn''t work. However, when using jQuery it will work if I use rjs but I really don''t want to do that. It seems to me that when I''m using jQuery, it doesn''t recognize the .js.erb files. As far as I know, I''m using the most recent version of jQuery and the most recent version of the rails driver for it. On Jan 14, 8:47 pm, Mike C <snib...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> My ajax stopped working when I switched to using respond_with. For my > Votes, I have the create action and the corresponding create.js.erb, > and respond_to :html, :js, :xml in the controller. Heres the log when > I try and create a vote: > > Started POST "/stories/3-asdfasdf1111/votes" for 127.0.0.1 at Fri Jan > 14 20:46:36 -0800 2011 > Processing by VotesController#create as */* > Parameters: {"story_id"=>"3-asdfasdf1111"} > SQL (1.9ms) SHOW TABLES > SQL (2.0ms) SHOW TABLES > SQL (2.5ms) SHOW TABLES > User Load (2.4ms) SELECT `users`.* FROM `users` WHERE (`users`.`id` > = 3) LIMIT 1 > CACHE (0.0ms) SELECT `users`.* FROM `users` WHERE (`users`.`id` > 3) LIMIT 1 > Story Load (2.4ms) SELECT `stories`.* FROM `stories` WHERE > (`stories`.`id` = 3) LIMIT 1 > SQL (0.4ms) BEGIN > Vote Load (0.7ms) SELECT `votes`.`id` FROM `votes` WHERE > (`votes`.`user_id` = 3) AND (`votes`.`story_id` = 3) LIMIT 1 > SQL (1.4ms) ROLLBACK > Completed in 1466ms > > ActionView::MissingTemplate (Missing template votes/new with > {:locale=>[:en, :en], :handlers=>[:builder, :rjs, :rhtml, :erb, :rxml, :haml], :formats=>[:html]} > in view paths "/Users/snibble/Projects/Ruby/storychan/app/views", "/ > Users/snibble/Projects/Ruby/storychan/vendor/plugins/white_list/app/ > views"): > app/controllers/votes_controller.rb:16:in `create'' > > Rendered /opt/local/lib/ruby/gems/1.8/gems/actionpack-3.0.3/lib/ > action_dispatch/middleware/templates/rescues/missing_template.erb > within rescues/layout (1.0ms) > > The votes controller only has the create option: > > def create > @story = Story.find(params[:story_id]) > @vote = @story.votes.create(:user => current_user) > > if @vote.errors.empty? && @vote.valid? > flash[:notice] = ''Successfully voted!'' > else > flash[:error] = ''You already voted for that story!'' > end > > respond_with @vote > end-- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
I found a solution here: https://github.com/rails/jquery-ujs/issues/issue/52 On Jan 18, 12:07 pm, Mike C <snib...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> I forgot to mention that I''m using jQuery. I tried ajax using > prototype in a test app and it worked, but when I use jQuery it > doesn''t work. However, when using jQuery it will work if I use rjs but > I really don''t want to do that. It seems to me that when I''m using > jQuery, it doesn''t recognize the .js.erb files. As far as I know, I''m > using the most recent version of jQuery and the most recent version of > the rails driver for it. > > On Jan 14, 8:47 pm, Mike C <snib...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > > > My ajax stopped working when I switched to using respond_with. For my > > Votes, I have the create action and the corresponding create.js.erb, > > and respond_to :html, :js, :xml in the controller. Heres the log when > > I try and create a vote: > > > Started POST "/stories/3-asdfasdf1111/votes" for 127.0.0.1 at Fri Jan > > 14 20:46:36 -0800 2011 > > Processing by VotesController#create as */* > > Parameters: {"story_id"=>"3-asdfasdf1111"} > > SQL (1.9ms) SHOW TABLES > > SQL (2.0ms) SHOW TABLES > > SQL (2.5ms) SHOW TABLES > > User Load (2.4ms) SELECT `users`.* FROM `users` WHERE (`users`.`id` > > = 3) LIMIT 1 > > CACHE (0.0ms) SELECT `users`.* FROM `users` WHERE (`users`.`id` > > 3) LIMIT 1 > > Story Load (2.4ms) SELECT `stories`.* FROM `stories` WHERE > > (`stories`.`id` = 3) LIMIT 1 > > SQL (0.4ms) BEGIN > > Vote Load (0.7ms) SELECT `votes`.`id` FROM `votes` WHERE > > (`votes`.`user_id` = 3) AND (`votes`.`story_id` = 3) LIMIT 1 > > SQL (1.4ms) ROLLBACK > > Completed in 1466ms > > > ActionView::MissingTemplate (Missing template votes/new with > > {:locale=>[:en, :en], :handlers=>[:builder, :rjs, :rhtml, :erb, :rxml, :haml], :formats=>[:html]} > > in view paths "/Users/snibble/Projects/Ruby/storychan/app/views", "/ > > Users/snibble/Projects/Ruby/storychan/vendor/plugins/white_list/app/ > > views"): > > app/controllers/votes_controller.rb:16:in `create'' > > > Rendered /opt/local/lib/ruby/gems/1.8/gems/actionpack-3.0.3/lib/ > > action_dispatch/middleware/templates/rescues/missing_template.erb > > within rescues/layout (1.0ms) > > > The votes controller only has the create option: > > > def create > > @story = Story.find(params[:story_id]) > > @vote = @story.votes.create(:user => current_user) > > > if @vote.errors.empty? && @vote.valid? > > flash[:notice] = ''Successfully voted!'' > > else > > flash[:error] = ''You already voted for that story!'' > > end > > > respond_with @vote > > end-- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Mike Chai wrote in post #975827:> I forgot to mention that I''m using jQuery. I tried ajax using > prototype in a test app and it worked, but when I use jQuery it > doesn''t work. However, when using jQuery it will work if I use rjs but > I really don''t want to do that. It seems to me that when I''m using > jQuery, it doesn''t recognize the .js.erb files.Good. Your JavaScript should be static. .js.erb is a bad habit. Best, -- Marnen Laibow-Koser http://www.marnen.org marnen-sbuyVjPbboAdnm+yROfE0A@public.gmane.org Sent from my iPhone -- 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 post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.