【问题标题】:How to slugify a parent model with fields from a child model?如何使用子模型中的字段对父模型进行 slugify?
【发布时间】:2011-06-09 23:55:07
【问题描述】:

我想使用 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

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

【问题讨论】:

    标签: ruby-on-rails-3 mongoid slug


    【解决方案1】:

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

    更改显示操作
    @building = Building.find(params[:id])
    

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

    瞧!它有效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-11
      • 1970-01-01
      • 1970-01-01
      • 2014-04-15
      • 2019-02-23
      • 2015-12-14
      • 2016-06-26
      • 2021-03-20
      相关资源
      最近更新 更多