2

Rails と Mongoid ORM を使用したシンプルなブログ エンジンがあります。

ブログには「Article」と「Url」の 2 つのモデルがあります。Article モデルにはすべての投稿コンテンツが含まれており、Url クラスは記事のスラッグを取得して短い URL を作成するジェネレーター関数です。

my-sample-blog-post -> ai3n など。

問題は、2つをリンクするのに問題があることです。URL クラスを Article クラスに埋め込むこともできません。

私の質問は、Article モデル内で投稿が作成されるときに、その場で短い URL を生成できますか? Article モデルはすでに Mongoid::slug を使用して素敵な投稿スラッグを提供していますが、投稿ごとに短い URL も必要です。

これに関するヘルプは大歓迎です。

4

1 に答える 1

0

おそらく作成後のコールバックを使用して短い URL を生成し、それを Article モデル内のフィールドに格納できると思います。

このようなもの:

class Article

  field :title
  slug  :title
  field :short_url

  after_create :generate_short_url

  def generate_short_url
    self.short_url = shorten_it(self.slug)   # assuming you implement shorten_it 
    self.save
  end
end
于 2013-07-30T01:24:56.590 に答える