如何在多态模型上设置current_user id?

时间:2012-06-12 17:25:41

标签: ruby-on-rails

如何在这种复杂的情况下设置Rails记录的所有者。

我有用户,事件,标记模型。标签是多态的。

在活动表格中,我有:tag_ids多选。

在标签创建控制器中我有:

def create
  klass = [Event, ...some other models.].detect { |t| params["#{t.name.underscore}_id"]}
  @taggable = klass.find(params["#{klass.name.underscore}_id"])
  @tag = @taggable.tags.new(params[:tag]
  if save.......
end

到目前为止一切顺利。但Tag模型还有一个:tagged_by_id列,我需要将其设置为当前用户。

@tag = @taggable.tags.new(params[:tag].merge(tagged_by_id: current_user.id))

似乎应该有效。但事实并非如此。

tagged_by_id = nil

我做错了什么?

由于

0 个答案:

没有答案