Что-то здесь серьезно не складывается ... Моя страница просто обновляется, ничего не происходит, она никогда не затрагивает моих отладчиков, зависающих на всех моих методах, кроме индекса.
my html:
<%- for image in @images %>
<%= image.attachment_file_name %>
<%-# link_to_delete image, :url => destroy_image_admin_wysiwyg_path(image.id) %>
<%= link_to 'delete', { :url => destroy_image_image_path(image.id) },
#:confirm => 'Are you sure?',
:post => true
%>
<br />
<% end %>
мой контроллер
def destroy_image
debugger
@img = Image.find(params[:id])
@img.destroy
respond_to do |format|
format.html { redirect_to admin_image_rotator_path }
end
end
Мои маршруты:
map.resources :images, :member => { :destroy_image => :post }
Мойотвратительный хак, который работает, и я заменю его, как только найду что-нибудь получше
Я перенес действие на более простой контроллер, который я сам построил.
Изменил мои маршруты на:
admin.resources :wysiwygs, :member => { :destroy_image => :post }
Изменил мой html:
<%= link_to 'delete', :controller => "wysiwygs", :action => "destroy_image" %>
Но когда я нажал на ссылку ... он поднял .. действие show
??fffffffffuuuuuuu
Я отомстил, просто переместив свое действие в действие шоу и передав скрытое поле в моем html ..
<%= link_to 'delete', :controller => "wysiwygs", :action => "destroy_image", :hidden_field => {:value => image.id} %>
def show
# this was previously in destroy_image
@img = Image.find(params[:hidden_field][:value])
@img.destroy
respond_to do |format|
format.html { redirect_to admin_image_rotator_path }
end
end