title: Rails delegate with a different name
body: <p>Hi there I am using the Form Object refactor pattern. 
  I have two models, Project and User. such that </p>
  
  <pre><code>Project.first.name # "Buy milk"
  User.first.name # "John Doe"
  </code></pre>
  
  <p>I have a form that accepts the NAME of a project, and the NAME of the user. </p>
  
  <pre><code>class UserForm
    include ActiveModel::Model
  
     def initialize(name:'', project_name:'')
      @name = name
      @project_name = project_name
     end
  
    def persisted?
      false
    end
  
    def self.model_name
      ActiveModel::Name.new(self, nil, "ProjectForm")
    end
  
    delegate :name, :email, to: :user
    delegate :project_name, to: :project # PROBLEM: project has #name not #project_name method
  
    def user
      @user ||= User.new
    end
  
    def project
      @project ||= Project.new
    end
  
  end
  </code></pre>
  
  <p>The main problem lies in the initialize and the delegate part of the code, since both Project and User has a field name, and so I can't have @name for both in the initialize. Is there a way to do something like</p>
  
  <pre><code>delegate name: :project_name?
  </code></pre>
  
  <p>Thank you!</p>