Маршрутизация с использованием метода DELETE с точкой, а не с / в рельсах

Кнопка удаления в моем приложении rails возвращает следующую ошибку:

No route matches [DELETE] "/requests.3"

Не знаю почему.

Вот ссылка на кнопку в представлении запроса (с использованием bootstrap 3):

<%= link_to '<i class="glyphicon glyphicon-remove"></i>'.html_safe,
    requests_path(request), method: :delete,
    data: { confirm: 'Are you sure?' },  class: 'btn btn-danger' %>

и в маршрутах у меня есть:

delete 'requests/:id' => 'requests#destroy'

а в контроллере у меня

def destroy
  @request = Request.find(params[:id])
  @request.destroy
  redirect_to action: 'index', status: 303
end

Любая помощь будет оценена по достоинству.

Спасибо.


person Avir94    schedule 29.07.2016    source источник


Ответы (1)


Решение, которое я решил сработать, заключалось в том, чтобы вручную указать путь в теге <%= link_to

<%= link_to '<i class="glyphicon glyphicon-remove"></i>'.html_safe,
"/requests/#{request.id}/destroy", method: :delete, 
data: { confirm: 'Are you sure?' },  class: 'btn btn-danger' %>

и это, казалось, сработало.

person Avir94    schedule 01.08.2016