You could use [find_or_initialize_by](http://api.rubyonrails.org/?q=find_or_initialize_by) here to avoid fi statement