同じ機能が必要な2つのモデルがあります。 、以来Railsの2つのモデルで機能する関数を作成する
def assign_uuid
if self.uuid.nil?
self.uuid = ActiveSupport::SecureRandom.hex(32)
end
end
:各モデルであり
before_save :assign_uuid
:私は私が持っている両方のモデルについては
...これは右のレールの道を乾燥させる方法を学びたいのですがassign_uuidは両方のモデルに住んでいますが、このfuncを配置する場所はどこですか?また、モデルでは、それはbefore_saveと言います。 assign_uuidは、どの場所にあるのですか?これをモジュールとして追加し、モデルにそれを混ぜる必要があり
おかげ
私はどちらも受け入れ可能であり、それは事件に依存すると思います。すべてのモデルに機能を追加する必要がある場合は、ActiveRecord :: Baseを再度開きます。一方、モジュールを含むことも明示的であり、イホを理解するのがより明確である。 – nathanvda
ありがとう、これは素晴らしいです。私はたくさん学んだ – AnApprentice
あなたは大歓迎です!そしてありがとう、それは知って良いです。 –