Unable to delete post in sample blog application

Hi All,

I am new to RoR and I am writing a small blog application. I have added
a
Destroy / Delete link to the post index, but when I click this delete
link
the show action is fired. The log seems to confirm this:

Started GET “/posts/2” for xxx.xxx.xxx.xxx at 2014-03-31 15:51:03 +0000
Processing by PostsController#show as HTML
Parameters: {“id”=>“2”}
Post Load (0.1ms) SELECT “posts”.* FROM “posts” WHERE “posts”.“id” =
?
LIMIT 1 [[“id”, “2”]]
Comment Load (0.1ms) SELECT “comments”.* FROM “comments” WHERE
“comments”.“post_id” = ? [[“post_id”, 2]]
Rendered posts/show.html.erb within layouts/application (9.0ms)
Completed 200 OK in 120ms (Views: 117.3ms | ActiveRecord: 0.2ms)

My destroy method in the controller is:

def destroy
@post = Post.find(params[:id])
@post.destroy

redirect_to posts_path

end

The code in the index view is:

   <td><%= link_to 'Destroy', post, method: :delete, data: {confirm:

‘Are you sure?’} %>

Would anyone have any idea what I might be missing here?

Any help appreciated

Peter

I think here is the error:

<%= link_to ‘Destroy’, post,
method:
:delete, data: {confirm: ‘Are you sure?’} %>
= link_to ‘Destroy’, post_path(post), bla bla bla

Check if jquery-ujs is being loaded properly. I’d wager, your “Are you
sure?” confirmation isn’t even popping up.

On Mon, Mar 31, 2014 at 9:42 PM, Claudiu C.
[email protected]wrote:

the show action is fired. The log seems to confirm this:

The code in the index view is:


Regards,
Abdulsattar Mohammed
http://codingtales.com

Thanks for the replies.

@Claudiu I have fixed the link you mentioned and the app is doing the
same
thing. The show action is being fired when I click the Delete link

@Abdulsattar how I can I check if jquery-ujs is being loaded properly.
The
confirmation is not popping up. What change might be required to fix
this?

Thanks

Peter

Thanks for the replies.

@Claudiu I have fixed the link you mentioned and the app is doing the
same
thing. The show action is being fired when I click the Delete link

@Abdulsattar how I can I check if jquery-ujs is being loaded properly.
The
confirmation is not popping up. What change might be required to fix
this?

Thanks

Peter

@Peter Heylin Check the console if any there are any javascript errors.
And
view page source, to see if jquery-ujs is being loaded. If it’s not add
it
in the application.js as manifest.

On Mon, Mar 31, 2014 at 10:02 PM, Peter Heylin
[email protected]wrote:

Peter

Started GET “/posts/2” for xxx.xxx.xxx.xxx at 2014-03-31 15:51:03 +0000

   <td><%= link_to 'Destroy', post, method: :delete, data: {confirm:

“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].
To view this discussion on the web visit

https://groups.google.com/d/msgid/rubyonrails-talk/be04aa29-ec7e-4cb2-bcf8-a50b58034206%40googlegroups.comhttps://groups.google.com/d/msgid/rubyonrails-talk/be04aa29-ec7e-4cb2-bcf8-a50b58034206%40googlegroups.com?utm_medium=email&utm_source=footer

.

For more options, visit https://groups.google.com/d/optout.


Regards,
Abdulsattar Mohammed
http://codingtales.com

@Abdulsattar Mohammed,

There are no javascript errors in the console and jquery-ujs appears to
be
loaded (see head of page source below).

Blog

I have also checked to make sure the issue isn’t something as small as a
popup blocker.

Thanks,

Peter

On Tuesday, April 1, 2014 3:36:13 AM UTC-4, Peter Heylin wrote:

media=“all” rel=“stylesheet” /><link data-turbolinks-track=“true” href="
/assets/comments.js?body=1http://192.168.100.13:3000/assets/comments.js?body=1
I have also checked to make sure the issue isn’t something as small as a

“comments”.“post_id” = ? [[“post_id”, 2]]
end

Peter

The format of your link looks fine, I have to agree this looks like a
javascript issue. When you say, “no javascript errors in the console”,
what console are you looking at? Javascript errors would appear in the
browser. If you use Firefox, Firebug is a great tool for this. If you
use
Safari, in Preferences > Advanced check the box “Show Develop menu in
menu
bar”. If you use Chrome, there are similar tools under View >
Developer.
Any of these tools will allow you to view any javascript errors. If
you
use Internet Explorer, sorry I can’t help you. I’m sure someone else
can.

It does look like you have the jquery_ujs file properly loading. You
might
want to check a couple of things. First, make sure the jquery_ujs gem
is
current. Second, make sure you do NOT have a jquery_ujs.js file in the
app/assets/javascripts folder. You want this to be supplied by the gem.

Peter,

Did you ever get this resolved? I am having the exact same problem.
There is never an HTTP DELETE request, only a GET.

Ken