2016-07-30 1 views
1

У меня возникла проблема с установкой моего http-глагола для удаления. Это мое первое приложение в рельсах 5, и я также использую купленную тему, поэтому я уверен, что мне не хватает чего-то глупого. Когда я создаю ссылку ниже:Rails 5 data-method = delete отправляет запрос GET

<%= link_to 'Sign out', destroy_user_session_path, :method => :delete %> 

Я получаю

<a rel="nofollow" data-method="delete" href="https://stackoverflow.com/users/sign_out">Sign out</a> 

однако это все еще посылает запрос GET. Большинство ответов, которые я видел, говорят, чтобы проверить, загружается ли jquery ujs. Похоже, что так оно и есть. Я что-то пропустил?

<script src="/assets/jquery_ujs.self-e87806d0cf4489aeb1bb7288016024e8de67fd18db693fe026fe3907581e53cd.js?body=1" data-turbolinks-track="reload"></script> 
+0

Не загружен ли jquery (не ujs)? У вас есть ошибки в консоли браузера? Включен ли JavaScript в вашем браузере? В любом случае data-method = "delete" должен создавать теневую форму и эмулировать удаление с ней (если браузер поддерживает ее). Вы также можете использовать button_to. –

+0

Sergey - jquery также загружается, а js не отключается. Я могу использовать селектора jQuery в консоли браузера. Спасибо, что ответили. –

+0

Вы можете попытаться найти e.stopPropagation() в javaScript или попробовать самоцветов, а не execjs, или попытаться отключить turbolinks может быть ... –

ответ

0

У меня такая же проблема. то, что я сделал: запуска удалить все скомпилированные активы,

rails assets:clobber

изменение конфигурации/production.rb

config.assets.compile = true

application.js:

//= require jquery2 
//= require jquery_ujs 

надеюсь, что это помогает

Смежные вопросы