fix postgresql use DictCursor save bug
wtf is this garbage? I can't tell what you changed
Hi:
When peewee in postgresql and use DictCursor that one model with a not char pk use 'save' is error.
test_code is :
```
from psycopg2.extras import RealDictCursor
from peewee import *
test_psql_db = PostgresqlDatabase('peewee_test', host='127.0.0.1', port=5432,
                                  user='postgres', password='postgres',

                                  cursor_factory=RealDictCursor)
class IntPKModel(Model):
    pk = PrimaryKeyField()
    data = CharField()

    class Meta:
        database = test_psql_db
class TestIntPKModelWithDictCursor(ModelTestCase):
    requires = [IntPKModel]

    def test_save(self):
        pi = IntPKModel(data='pi1')
        pi.save()
```

error like that:
```
======================================================================
ERROR: test_save (playhouse.tests.test_models.TestIntPKModelWithDictCursor)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/xxq/prv_workspace/peewee/playhouse/tests/test_models.py", line 2368, in test_save
    pi.save()
  File "/home/xxq/prv_workspace/peewee/peewee.py", line 5385, in save
    pk_from_cursor = self.insert(**field_dict).execute()
  File "/home/xxq/prv_workspace/peewee/peewee.py", line 3746, in execute
    pk_row)]
  File "/home/xxq/prv_workspace/peewee/peewee.py", line 3744, in <listcomp>
    for field, column
  File "/home/xxq/prv_workspace/peewee/peewee.py", line 1096, in python_value
    return value if value is None else self.coerce(value)
ValueError: invalid literal for int() with base 10: 'pk'
```