Using fn.ST_AsText does not work in a select query
First off, try modifying your query so that you're not selecting "latlng" twice:

```python
query = Homes.select(Homes.name, fn.ST_AsText(Homes.latlng).alias('latlng'))
```

You may not need the ".alias()" so try with/without. @coleifer, thank you for the reply. Unfortunately, that does not work either. I still get the `latlng` column in binary representation:

```
('SELECT "t1"."id", "t1"."name", "t1"."latlng", ST_AsText("t1"."latlng") AS "latlng" FROM "homes" AS "t1"', [])
[{'id': 1, 'name': 'Test', 'latlng': '0101000000000000000000F03F0000000000002440'}]
``` @coleifer, I managed to make it work. As long as the `latlng` column selected first, it works:

```
    homes = Homes.select(fn.ST_AsText(Homes.latlng).alias('latlng'), Homes).execute()
    print([model_to_dict(home) for home in homes])
```

Result:
```
('SELECT "t1"."id", "t1"."name", "t1"."latlng", ST_AsText("t1"."latlng") AS "latlng" FROM "homes" AS "t1"', [])
[{'id': 1, 'name': 'Test', 'latlng': 'POINT(1 10)'}]
``` Yes -- that was why I suggested that you explicitly declare which columns you are selecting, rather than selecting everything (which happens when you do `.select(Homes)`) and then also selecting `latlng`. Unlike SQL, which returns your rows as a table, peewee is restricted to using Python named attributes so whichever value is selected first - for a given attribute - will be used and any other values with the same attribute ("latlng" in this case) will be ignored.
I am trying to select a column of type `GEOMETRY` in WKT format using the ST_AsText function in PostgreSQL. Interestingly, peewee is generating the correct SQL but the query result is not fetched using the ST_AsText function. 

```
from peewee import *

database = PostgresqlDatabase('test', user='postgres', password='', host='127.0.0.1')

class GeometryField(Field):
    """
    Custom field that makes writing
    """
    field_type = 'geometry'

class Homes(Model):
    name = CharField()
    latlng = GeometryField(null=True)

    class Meta:
        database = database


if __name__ == '__main__':
    database.drop_tables([Homes])
    database.create_tables([Homes])

    # Create
    Homes.create(name='Test', latlng=fn.ST_MakePoint(1, 10))

    print(Homes.select(Homes, fn.ST_AsText(Homes.latlng)).sql())

    # Select
    homes = Homes.select(Homes, fn.ST_AsText(Homes.latlng)).execute()
    print([model_to_dict(home) for home in homes])

    # Update
    home = Homes.get_by_id(1)
    home.name = 'Something new'
    home.save()
```

This will result in the following:
```
('SELECT "t1"."id", "t1"."name", "t1"."latlng", ST_AsText("t1"."latlng") FROM "homes" AS "t1"', [])
[{'id': 1, 'name': 'Test', 'latlng': '0101000000000000000000F03F0000000000002440'}]
```