Sometimes it's necessary to store incomplete records, without fullfilling all validations, to complete and then validate the record. ActiveRecord::DraftRecords allows you to persist an record even if it's invalid by tagging it as a draft.