﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
36451	Issue with GeoFeatureModelSerializer and GeneratedField returning WKT instead of GeoJSON	QyuBee		"Hi team,

I'm currently using GeoFeatureModelSerializer (from rest_framework_gis) to serialize a model that includes a GeneratedField representing a geographic Point. However, instead of returning a GeoJSON geometry object, the serializer returns a WKT string like this:



{{{

        {
            ""id"": 483602,
            ""type"": ""Feature"",
            ""geometry"": ""SRID=4326;POINT (-3.826841 48.576644)"",
            ""properties"": {
                ""id_data"": ""29019_5010_00013"",
                ""libelle"": ""13 rue Traverse, 29200 Brest""
            }
        },
}}}

Here’s a simplified version of my setup:


{{{
point_geo = models.GeneratedField(
    output_field=models.PointField(blank=True, null=True),
    db_persist=True,
    expression=Func(F('lon'), F('lat'), function='ST_MakePoint', output_field=PointField(srid=4326)),
    blank=True,
    null=True
)

}}}


This point_geographique field is computed based on available coordinates (lon, lat or x, y) and works fine at the DB level. However, since it's a GeneratedField, it seems like GeoFeatureModelSerializer does not recognize it as a proper geometry field and falls back to a generic model field, which results in the WKT string in the output.

In serializer, if i print the fields, it returns : 

{{{ 
'point_geo': ModelField(allow_null=True, model_field=<django.db.models.fields.generated.GeneratedField: point_geo>, read_only=True)
}}}

As a workaround, I’ve overridden field in serializer with GeometryField, but it feels like something that should be handled natively if the output field is a PointField.

Is there any plan to support GeneratedField-based geometry fields in future versions of DRF-GIS? Or is there a cleaner approach that I might be missing?

Thanks in advance for your help!

Best regards,"	Bug	closed	Core (Serialization)	5.1	Normal	invalid			Unreviewed	0	0	0	0	0	0
