#25708: cannot annotate with geometry value
----------------------------+--------------------------------------
Reporter: sir-sigurd | Owner: sir-sigurd
Type: Bug | Status: assigned
Component: GIS | Version: 1.8
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
----------------------------+--------------------------------------
Comment (by sir-sigurd):
Replying to [comment:11 jarshwah]:
> The `output_field` is only really responsible for converting the value
returned from the database into a useable model field, it doesn't take
responsibility for serialising the value to be sent to the database.
This doesn't seem to be true, `output_field.get_db_prev_value()` is used
in `Value.as_sql()`
[https://github.com/django/django/blob/93452a70e8a62c7408eeded444f5088d4a26212d/django/db/models/expressions.py#L573
(GitHub)]:
{{{
#!div style="font-size: 80%"
Code highlighting:
{{{#!python
def as_sql(self, compiler, connection):
connection.ops.check_expression_support(self)
val = self.value
# check _output_field to avoid triggering an exception
if self._output_field is not None:
if self.for_save:
val = self.output_field.get_db_prep_save(val,
connection=connection)
else:
val = self.output_field.get_db_prep_value(val,
connection=connection)
if val is None:
# cx_Oracle does not always convert None to the appropriate
# NULL type (like in case expressions using numbers), so we
# use a literal SQL NULL
return 'NULL', []
return '%s', [val]
}}}
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/25708#comment:12>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/068.b1486349ff4e32205066c511a5268755%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.