﻿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
36001	Make SpatialReference support for non EPSG Coordinate systems (ESRI, OGC, USER)	Alex		"# update in comment below
[https://code.djangoproject.com/ticket/36001#comment:5]

Hi
situation with custom CRS in geodjango.

context: Debian GNU/Linux 12 (bookworm), Postgresql 16.6, Python 3.11.2, Postgis 3.4.2, GDAL 3.6.2, PROJ 9.1.1, Django 4.2.11, DRF 3.5.11, [DRF-GIS]https://github.com/openwisp/django-rest-framework-gis 1.0

Objects with geometry in DB creates with no problem with this class
{{{#!python
from django.contrib.gis.db import models

class Location(models.Model):
   ...
    c_geom = models.GeometryCollectionField(srid=300001)
   ...
}}}
gdalsrsinfo  works as expected
{{{
gdalsrsinfo 'USER:300001'
PROJ.4 : +proj=tmerc ...
}}}
projinfo also works fine
{{{
projinfo 'USER:300001' 
PROJ.4 : +proj=tmerc ...
}}}
python manage.py shell `is correct`
{{{#!python
from osgeo import osr
sk = osr.SpatialReference()
sk.SetFromUserInput('USER:300001')
0
print(sk)
PROJCS... 
}}}

but app always throws errors when fetch and create objects via API (in admin.site - ok, no errors)

{{{#!python
def create(self, validated_data):
        if ""SRID=300001;"" in str(self.validated_data[""geom""]):
            logger.info(""*""*60)
            logger.info(f""validated_data geom with USER:300001: {self.validated_data['geom']}"")
            logger.info(f""geom srid: {self.validated_data['geom'].srid}"")
            from osgeo import osr
            sk = osr.SpatialReference()
            sk.SetFromUserInput('USER:300001') # <- here same error: GDAL_ERROR 1: b'PROJ: proj_create_from_database: crs not found'
            logger.info(f""SpatialReference: {sk}"")
            logger.info(""*""*60)
}}}

error.log
{{{
************************************************************
validated_data geom with USER:300001: SRID=300001;GEOMETRYCOLLECTION Z (POINT Z (83721.138 59266.787 101.09))
geom srid: 300001
GDAL_ERROR 1: b'PROJ: proj_create_from_database: crs not found'
SpatialReference: 
************************************************************
GDAL_ERROR 1: b'PROJ: proj_create_from_database: crs not found'
GDAL_ERROR 1: b'PROJ: proj_create_from_database: crs not found'
...
}}}
if request one object via API, Django send 8 email with this error. odd
"	New feature	closed	GIS	4.2	Normal	wontfix	gdal, proj4, postgis		Unreviewed	0	0	0	0	0	0
