从peewee Model获取有序的字段名称

bea*_*rdc 8 python orm peewee

我想用peewee 从csv 创建记录.看起来语法需要关键字args:

user = User.create(username='admin', password='test')
Run Code Online (Sandbox Code Playgroud)

如果csv中的行看起来像(admin, test),那么知道字段名称('username', 'password')以形成要传入的字典会很方便(看起来我不能传入模型的值列表来推断相应的字段是什么).

是否有一个属性User具有按其定义的顺序列出的字段名称?

谢谢

bea*_*rdc 14

看起来像是 User._meta.get_field_names()

我刚看到其他人在另一个问题中提到它.

  • 更新那些偶然发现这个问题的人:对于新版本的peewee,你需要使用`User._meta.sorted_fields`或`User._meta.sorted_field_names` (13认同)
  • 这是[postgres中的保留字](http://stackoverflow.com/questions/10891368/postgres-table-column-name-restrictions).Peewee处理得很好,但使用控制台变得更加棘手. (2认同)
  • 我不得不使用 `<class>._meta.fields.keys()` 因为 `sorted_field_names` 没有返回外键(有时)。 (2认同)