:method => :delete not working

23 views
Skip to first unread message

Daisy Di

unread,
Jan 26, 2012, 3:19:15 AM1/26/12
to rubyonra...@googlegroups.com
Dear All,
i want to delect a record with the code
<% @reservations.each do |reservation| %>
<tr>
<td>00000<%= reservation.id%></td>
<td><%= reservation.item_desc %></td>
<td><%= reservation.item_desc %></td>
<td><%= reservation.created_on %></td>
<td><%= reservation.valid_until %></td>
<td><%= link_to 'Destroy',reservation, :confirm => 'Are you
sure?' ,:method => :delete%></td>
</tr>

but when i click the link ,it will redirect to the show page ,it means
that the show action is invoked,acturally i want to delete it not show
the details, so ,i think the :method=>:delete doesnt work, i search a
lot to find the solution,some advise to add <%= javascript_include_tag
:all %> to the layout,but it still doesnt work, anyone can help me ?
Thanks very much.

PS:
http://stackoverflow.com/questions/1317448/how-to-create-a-delete-link-for-a-related-object-in-ruby-on-rails
http://stackoverflow.com/questions/1317448/how-to-create-a-delete-link-for-a-related-object-in-ruby-on-rails

these two links provide the solution about this kind of problem,i tried,
but it doesnt work.

--
Posted via http://www.ruby-forum.com/.

Andre

unread,
Jan 26, 2012, 3:41:35 AM1/26/12
to rubyonra...@googlegroups.com
Hi, could you post your controller code too?

Javier Quarite

unread,
Jan 26, 2012, 6:40:11 AM1/26/12
to rubyonra...@googlegroups.com
On Thu, Jan 26, 2012 at 3:19 AM, Daisy Di <li...@ruby-forum.com> wrote:
Dear All,
i want to delect a record with the code
 <% @reservations.each do |reservation| %>
 <tr>
   <td>00000<%= reservation.id%></td>
   <td><%= reservation.item_desc %></td>
   <td><%= reservation.item_desc %></td>
   <td><%= reservation.created_on %></td>
   <td><%= reservation.valid_until %></td>
   <td><%= link_to 'Destroy',reservation, :confirm => 'Are you
            sure?' ,:method => :delete%></td>
 </tr>

but when i click the link ,it will redirect to the show page ,it means
that the show action is invoked,acturally i want to delete it not show
the details, so ,i think the :method=>:delete doesnt work, i search a
lot to find the solution,some advise to add <%= javascript_include_tag
:all %> to the layout,but it still doesnt work, anyone can help me ?
Thanks very much.


you want to destroy them using ajax? or just destroy?
What do you have on your destroy action in the controller?

Javier 

Daisy Di

unread,
Jan 26, 2012, 10:38:21 PM1/26/12
to rubyonra...@googlegroups.com
Andre wrote in post #1042629:

> Hi, could you post your controller code too?

Hi, this is the destroy controller, i wont delete the record,just change
the status to -1.

def destroy
@reservation = CrmRedemptionReservation.find(params[:id])
@reservation.update_attributes(:status_level => -1)
#@reservation.destroy
redirect_to redeemhistory_path
end

Javier Quarite

unread,
Jan 26, 2012, 10:49:42 PM1/26/12
to rubyonra...@googlegroups.com
On Thu, Jan 26, 2012 at 10:38 PM, Daisy Di <li...@ruby-forum.com> wrote:
Andre wrote in post #1042629:
> Hi, could you post your controller code too?

Hi, this is the destroy controller, i wont delete the record,just change
the status to -1.

 def destroy
   @reservation = CrmRedemptionReservation.find(params[:id])
   @reservation.update_attributes(:status_level => -1)
   #@reservation.destroy
   redirect_to redeemhistory_path
 end

Why do you comment the line that destroy the reservation?... or your idea of destroy it is by changing its status?

Javier 

bhaberer

unread,
Jan 26, 2012, 1:37:51 PM1/26/12
to Ruby on Rails: Talk
What this probably means is that the javascript that handles your
delete links is not being loaded.

What version of Rails is this? I hit this issue a couple times with
early iterations of Rails 3 before the asset pipeline kicked in.

- Brian Haberer

On Jan 26, 12:19 am, Daisy Di <li...@ruby-forum.com> wrote:
> Dear All,
> i want to delect a record with the code
>  <% @reservations.each do |reservation| %>
>   <tr>
>     <td>00000<%= reservation.id%></td>
>     <td><%= reservation.item_desc %></td>
>     <td><%= reservation.item_desc %></td>
>     <td><%= reservation.created_on %></td>
>     <td><%= reservation.valid_until %></td>
>     <td><%= link_to 'Destroy',reservation, :confirm => 'Are you
>              sure?' ,:method => :delete%></td>
>   </tr>
>
> but when i click the link ,it will redirect to the show page ,it means
> that the show action is invoked,acturally i want to delete it not show
> the details, so ,i think the :method=>:delete doesnt work, i search a
> lot to find the solution,some advise to add <%= javascript_include_tag
> :all %> to the layout,but it still doesnt work, anyone can help me ?
> Thanks very much.
>
> PS:http://stackoverflow.com/questions/1317448/how-to-create-a-delete-lin...http://stackoverflow.com/questions/1317448/how-to-create-a-delete-lin...

Colin Law

unread,
Jan 27, 2012, 5:06:54 AM1/27/12
to rubyonra...@googlegroups.com
On 26 January 2012 08:19, Daisy Di <li...@ruby-forum.com> wrote:
> Dear All,
> i want to delect a record with the code
>  <% @reservations.each do |reservation| %>
>  <tr>
>    <td>00000<%= reservation.id%></td>
>    <td><%= reservation.item_desc %></td>
>    <td><%= reservation.item_desc %></td>
>    <td><%= reservation.created_on %></td>
>    <td><%= reservation.valid_until %></td>
>    <td><%= link_to 'Destroy',reservation, :confirm => 'Are you
>             sure?' ,:method => :delete%></td>
>  </tr>
>
> but when i click the link ,it will redirect to the show page ,it means
> that the show action is invoked,acturally i want to delete it not show
> the details, so ,i think the :method=>:delete doesnt work, i search a
> lot to find the solution,some advise to add <%= javascript_include_tag
> :all %> to the layout,but it still doesnt work, anyone can help me ?

Have you checked in log/development.log to see what is logged when you
click the link?

Colin

Reply all
Reply to author
Forward
0 new messages