È possibile utilizzare delegato nel modello di record attivo e utilizzare condizioni come ?Registrazione attiva con delegato e condizioni
class User < ApplicationRecord
delegate :company, :to => :master, :if => :has_master?
belongs_to :master, :class_name => "User"
def has_master?
master.present?
end
end
avrebbe potuto usare la nuova sintassi try: master.try (: società) che restituirà nullo se master è pari a zero. –
provare è disponibile solo in ruby 1.9 –
Try è disponibile in qualsiasi implementazione Ruby tramite ActiveSupport ma richiede ActiveSupport> = 2.3. Inoltre, in questo codice non ho visto alcun reale vantaggio dell'utilizzo di try(), quindi sono andato con l'implementazione classica. –