在模型中使用对象参数

时间:2015-12-31 07:44:53

标签: ruby-on-rails

我有一个用rails / angular制作的应用,用户可以将电影添加到他们的监视列表中。当用户添加电影时,通过Public Activity gem

创建活动记录

这是我的电影模型(由宝石跟踪),

@movie = "Star Wars"

include PublicActivity::Model
tracked owner: -> (controller, model) { controller && controller.current_user }
tracked :params => {
  :title => @movie
}

我发现通过在我的电影模型中使用此代码,我可以在活动记录中添加一个参数。

tracked :params => {
  :title => @movie,
}

现在,当我添加新电影(和新活动)时,它会将此添加到活动记录

"parameters":{"title":"Star Wars"}

当然这是硬编码的,它应该是电影对象的标题。是否可以从电影模型中的电影对象获取数据?

这是电影表,

create_table "movies", force: :cascade do |t|
  t.string   "title"
  t.string   "release_date"
  t.string   "image"
  t.integer  "user_id"
  t.datetime "created_at",   null: false
  t.datetime "updated_at",   null: false
  t.string   "movie_id"
  t.string   "backdrop"
end

1 个答案:

答案 0 :(得分:1)

    tracked :params => {
      :title => :get_title
    }
    def get_title
      title
    end

除非我理解你的错误。如果是这样,请纠正我:)