首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Current_event添加了一首歌(Rails)

Current_event添加了一首歌(Rails)
EN

Stack Overflow用户
提问于 2016-12-20 06:43:58
回答 1查看 28关注 0票数 1

我已经开发了一个应用程序,用户可以登录并查看他们的事件。可以单击事件,并在事件显示页面中添加歌曲。我遇到的问题是,当您在填写歌曲字段后单击submit时,它会给我一个错误,因为它找不到歌曲要添加的事件id。如何定义一个current_event方法来从用户检索单击事件?到目前为止,我的歌曲控制器就是这样的:

代码语言:javascript
复制
class SongsController < ApplicationController

    def create
        @song = current_event.songs.build(songs_params)
        if @song.save
            flash[:success] = "Song created"
            redirect_to root_url
        else
            flash[:error] = "Failed"
        end

    end

    def destroy
    end
    private

      def micropost_params
        params.require(:song).permit(:artist, :title, :genre)
      end
end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-20 06:51:30

我认为你需要定义嵌套的路线。

也许,在routes.rb上:

代码语言:javascript
复制
resources :events do
  resources :songs
end

现在,通往像localhost:3000/events/1/songs/new这样的新歌的道路

你有params[:event_id] = 1

在您的控制器上,动作创建,您可以调用

代码语言:javascript
复制
current_event = Event.find(params[:event_id])
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41236329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档