this is not great.  it adds a save in the case of existing cards.  maybe c.save if c.new_card?