私はこのファイルを持っていますmodels/extensions/url.rb
:
module Extensions
module Url
extend ActiveSupport::Concern
included do
end
module ClassMethods
def acts_as_url(attribute)
end
end
module InstanceMethods
end
end
end
次に、次のようなモデルを作成できます。
class Post
include Mongoid::Document
include Mongoid::Timestamps
include Extensions::Url
acts_as_url :title
field :title, :type => String
end
拡張モジュールのどこで、各インスタンスにメソッド/アクセサーが呼び出されるようにして、フィールド (属性パラメーターとして渡される) にurl
アクセスし、次のことができるようにすることができます。:title
post = Post.find(params[:id])
puts post.url