擅长:python、mysql、java
<p>这似乎比它需要的更复杂,但它是有效的。我希望有一个更直接的方法。。。在</p>
<pre><code>@staticmethod
def fromFieldHash(h):
row = MyModel()
cols = list(row.__table__._columns)
for k, v in h.iteritems():
col = find(lambda c: c.key == k, cols)
# See http://www.sqlalchemy.org/trac/wiki/06Migration#AnImportantExpressionLanguageGotcha
if col is not None:
prop = row.__mapper__._columntoproperty[col].key
setattr(row, prop, v)
return row
</code></pre>
<p>我使用的<code>find</code>方法来自<a href="http://tomayko.com/writings/cleanest-python-find-in-list-function" rel="nofollow">Cleanest Python find-in-list function</a>。在</p>