title: web2py insert methods
body: <p>Web2py docs have two methods for inserting into a database</p>
  
  <pre><code>db.tbl[0] = newRow
  </code></pre>
  
  <p>and </p>
  
  <pre><code>db.tbl.insert(newRowAsDict)
  </code></pre>
  
  <p>The documentation implies that they are synonyms, but they appear to be different.  For one, the insert method throws an exception if newRow contains fields that are not in the table.  Also the .insert method returns the id of the added row, where the assignment doesn't.</p>
  
  <ul>
  <li>Is this the intended behavior</li>
  <li>How can I get the id if I use the assignment method?</li>
  <li>Is the assignment method depricated?</li>
  </ul>