0

我正在尝试在 Rails 中建模播放列表功能

我的模型:

class Video < ActiveRecord::Base 
  has_and_belongs_to_many :playlists
end

class User < ActiveRecord::Base
 has_many :playlists
 has_many :videos ,through: :playlists
end

class Playlist < ActiveRecord::Base
  has_and_belongs_to_many :videos
  has_one :user
end

联合表播放列表视频

  create_table "playlists_videos", id: false, force: true do |t|
    t.integer "video_id"
    t.integer "playlist_id"
  end

在控制台中一切正常,我可以通过控制台将视频推送到特定的播放列表,但我试图弄清楚如何编写一种方法来实际推送已经通过 select_tag 或 check_box_tag 选择播放列表创建的视频通过链接或按钮。我被困在这里。不知道如何继续让它在 UI 中工作。应用演示 在这里

在视频控制器中,我的 add_to 方法

 def add_to_playlist(video_id, playlist_id)
    @video = Video.find_by(params[:id])
    @playlist = current_user.playlists.find_by(params[:id])
    @video.playlists << @playlist
    playlist.save
  end
4

1 回答 1

0

由于您保存的是播放列表而不是视频,因此您应该将视频推送到播放列表中。还要确保您调用的是 save on@playlist而不是playlist.

@playlist.videos << @video
@playlist.save
于 2013-10-10T04:50:31.457 回答