我希望能够使用PUT请求来编辑我在Ruby on Rails应用程序中上传的歌曲的标题。在Ruby on Rails中创建PUT请求?
def update
@sound_byte = SoundByte.find(params[:id]) #Error here
@sound_byte.update!(sound_byte_params)
flash[:success] = "The soundbyte title was changed."
redirect_to sound_byte_path
end
private
def sound_byte_params
params.require(:sound_byte).permit(:mpeg, :mpeg_file_name)
end
我最终得到这样的错误:
Couldn't find SoundByte with 'id'=song_name
如何解决这个问题的任何想法?我正在使用Paperclip gem来启用音频/ mpeg文件上传。
编辑:这是我的看法代码
<%= link_to "Edit", sound_byte_path(sound_byte.mpeg_file_name), class: "btn btn-primary btn-lg btn-xlarge", :method => :put %>
有一些问题与您的PARAMS。你能提供表单代码吗? – phamhoaivu
@phamhoaivu对不起,我不太清楚您的表单代码是什么意思?我将代码附加在与PUT请求相对应的视图中。 –
我以为你必须有一个表单来编辑歌曲。某些文本框输入新歌曲的名称和一个提交按钮。 – phamhoaivu