title: Django objects being "non subscriptable" leads me to write redundant code
body: <p>Django objects aren't "subscriptable" meaning if you have <code>user.name</code> you can't define it with <code>user['name']</code> meaning you can't dynamically load up an object with info.</p>
  
  <pre><code>info = {'first_name': 'Artur', 'last_name': 'Sapek'}
  
  me = User()
  for i in info:
      me[i] = info[i]
  </code></pre>
  
  <p>brings up <code>TypeError: 'User' object is not subscriptable</code> and I find myself writing code like</p>
  
  <pre><code>info = {'first_name': 'Artur', 'last_name': 'Sapek'}
  
  if 'first_name' in info: me.first_name = info['first_name']
  if 'last_name' in info: me.first_name = info['last_name']
  so on...
  </code></pre>
  
  <p>(It requires if-statements as well because there is more info and it is not always complete - this isn't my actual code) </p>
  
  <p>Is there any better way to do this with Django objects, which don't have the flexibility to use bracket notation like you can with lists, dicts, and strings?</p>