次の (大幅に簡略化された) オブジェクトがあるとします。
class Player < ActiveRecord::Base
has_many :characters
end
class Character < ActiveRecord::Base
belongs_to :player
delegate :name, :to => :player, :prefix => :player
end
複数のビューでプレイヤー名を表示する必要があります。しかし、 Player が nil である可能性は完全に有効です (そして予想されます)。
現在、次の方法でこれを処理しています。
class Character < ActiveRecord::Base
belongs_to :player
def player_name
player ? player.name : 'Unknown'
end
end
私はいくつかの理由でこれが好きではありません。これを行うより良い方法はありますか?