设置关联时的ActiveRecord :: AssociationTypeMismatch

Jus*_*zer 0 ruby ruby-on-rails ruby-on-rails-3

这是错误:

ActiveRecord::AssociationTypeMismatch in VideosController#update
Topic(#2173382840) expected, got String(#2148246520)

这是从这个方法:

def assign_topics
    if @topic_names
      self.topics = @topic_names.each do |name|
        Topic.find_or_create_by_name(name)
     end
    end
  end
Run Code Online (Sandbox Code Playgroud)

这个错误说的是什么?当主题是我的模型时,我不明白是否存在类型"主题"...

cod*_*tim 5

"each"返回原始数组或可枚举,请尝试使用"map"