title: How to use `from_orm` if the pydantic model defines aliases?
body: <p>Though the pydantic's ORM mode is documented <a href="https://pydantic-docs.helpmanual.io/usage/models/#orm-mode-aka-arbitrary-class-instances" rel="nofollow noreferrer">here</a>, unfortunately there is no documentation for usage with aliases.</p>
  
  <p>How to use <code>from_orm</code> if the pydantic model defines aliases?</p>
  
  <p>It seems that the <code>from_orm</code> factory forgets about all non-aliased names if aliases exist. - See error message and the corresponding code below. Is that a bug or a feature?</p>
  
  <p>The code snippet below fails unexpectedly with a validation error:</p>
  
  <blockquote>
    <p>pydantic.error_wrappers.ValidationError: 1 validation error for SimpleModel<br>
    threeWordsId<br>
     field required (type=value_error.missing)</p>
  </blockquote>
  
  <pre><code>from sqlalchemy import Column, String
  from sqlalchemy.ext.declarative import declarative_base
  from pydantic import BaseModel, Field
  
  Base = declarative_base()
  
  class SimpleOrm(Base):
      __tablename__ = 'simples'
      three_words_id = Column(String, primary_key=True)
  
  class SimpleModel(BaseModel):
      three_words_id: str = Field(..., alias="threeWordsId")
  
      class Config:
          orm_mode=True
  
  simple_orm = SimpleOrm(three_words_id='abc')
  simple_oops = SimpleModel.from_orm(simple_orm)
  </code></pre>