0

我想使用 Mongoid 为 Rails 3 中的模型处理 url。问题是我想在 slug 中使用的字段位于子模型中。我正在使用mongoid-slug gem 来解决这个问题,到目前为止我的尝试是这样的:

class Building
  references_one :address

  def to_param
    address.to_param
  end
end

class Address
  referenced_in :building

  field :houseno
  field :street

  slug :houseno, :street
end

虽然这允许我通过调用来形成正确的 url building_path(building),但该页面不包含正确的值。错误消息抱怨对象 id 不正确,我不确定如何让 Rails 监听并通过 to_param 找到记录。

4

1 回答 1

0

对于好奇的人,这就是我如何解决自己的问题。我意识到我需要使用从

@building = Building.find(params[:id])

@building = Address.find_by_slug(params[:id]).building

瞧!有用。

于 2011-01-17T08:11:09.613 回答