我正在Sinatra的一个项目上工作,我似乎无法使用delete方法。我的意图是能够使用模态中的表单删除对象。这就是我所拥有的:
routes.rb中:
delete '/songs/:id/delete' do
@song = Song.where(:id => params[:id]).first
@song.delete
redirect to '/songs'
end
index.erb:
<form action="/songs/:id/delete" method="post">
<input type="hidden" name="_method" value="delete">
<div id="song_id">
<label>id:</label>
<input type="text" name="id">
</div>
<button type="submit" id="delete">Delete</button>
<a href="/songs"><div id="back">Back to Songs</div></a>
</form>
感谢您的反馈。 (另外,抱歉缩进并不完美)
答案 0 :(得分:1)
您必须将id注入表单。不是:id
。
# example
<form action="/songs/1234/delete" method="post">
此外,您可以查看puts params
发生了什么。