繁体   English   中英

如何使用 Rails API 在 Javascript 中获取删除

[英]How to fetch delete in Javascript using Rails API

我正在尝试使用 Rails 作为 API 发送提取删除请求。 这是控制器中的销毁方法。

 def destroy track = Track.find_by(id: params[:id]) track.destroy end

我正在创建用于创建歌曲播放列表的应用程序的曲目。 在 index.js 中,我在渲染跟踪卡函数中调用事件侦听器。

 const renderTrackCard = (trackObj) => { let trackCard = document.createElement('div') trackCard.className = 'card' trackCard.dataset.id = trackObj.id trackCard.innerHTML = ` <p>${trackObj.title} - ${trackObj.artist} - Genre: ${trackObj.genre} <button class="delete-btn" data-action="delete" id="delete-btn"> X </button></p> ` main().appendChild(trackCard) document.querySelector('div').addEventListener('click', removeTrack) }

其次是删除跟踪功能。

 function removeTrack() { event.preventDefault() clearTrackForm() let id = event.target.dataset.id fetch(BASE_URL+`/tracks/${id}`, { method: "DELETE", headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' } }) .then(event.target.parentElement.remove()) }

当我点击删除按钮时,没有任何反应。 请指教。

首先,你认为什么叫做destroy! 而不是destroy以查看 StackTrace 并了解您的数据库发生了什么?

并向您的服务器端发出请求,您可以像这样使用 AJAX

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM