我是 Rails 的新手,我想做的是为 Youtube 创建一个简单的客户端。我正在使用 Youtube_it gem 来检索我的一个播放列表中的所有视频,并且我正在使用代码:
控制器:
class PlaylistsController < ApplicationController
def show
client = session[:client]
@playlist = client.playlist(params[:id])
@playlist.extend(BasePlaylist)
end
end
为 Youtube_it/Playlist.class 扩展的模块:
module BasePlaylist
extend ActiveModel::Naming
include ActiveModel::Conversion
def model_name
'Playlist'
end
def persisted?
false
end
end
播放列表/show.html.erb:
<h1><%= @playlist.title %></h1>
<%= render 'form' %>
播放列表/_form.html.erb:
<%= form_for(@playlist) do |f| %>
<% @playlist.videos.each do |video| %>
<div class="field">
<%= f.check_box_tag video.title %>
<%= f.label video.title %>
</div>
<% end %>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
我得到的是:
undefined method `model_name' for YouTubeIt::Model::Playlist:Class
我上面所做的是试图“包装”播放列表对象,但它看起来不起作用。任何想法?