[postgis-users] PL/Python

David Haynes haynesd2 at gmail.com
Wed May 18 12:26:09 PDT 2016


Yes because the second function in my doesn't error.

On Wed, May 18, 2016 at 12:06 PM, Martijn Meijers <b.m.meijers at tudelft.nl>
wrote:

> I think the gdal.getDriver call returns None. Hence the attribute error on
> the line afterwards. Are you sure that 19 is what you should pass as input?
>
> Martijn
>
> Verzonden vanaf mobiel.
>
>
> -------- Oorspronkelijk bericht --------
> Van: David Haynes
> Datum:18-05-2016 17:35 (GMT+01:00)
> Aan: postgis-users at lists.osgeo.org
> Onderwerp: [postgis-users] PL/Python
>
> Hello,
>
> I have a question regarding importing the gdal library using pl/python.
> Specifically, I want to create an in memory raster using the gdal library.
> This is a snippet of code that I have written,
>
> CREATE OR REPLACE FUNCTION terrapop_area_level_to_raster2(
> sample_geog_level_id bigint, raster_variable_id bigint, raster_band bigint)
> RETURNS text AS
> $BODY$
> from osgeo import gdal
> import numpy as np
> from osgeo import ogr, osr
>
> memDriver = gdal.GetDriver(19)
> #memDriver = gdal.GetDriverByName('MEM')
> memRast = memDriver.Create('', 10, 10, 1, gdal.GDT_Int32)
>
> This is the error I receive. A python NoneType error. Which seems to that
> the gdal class has not been imported. I have verified that gdal is
> available on the system.
>
> ERROR: AttributeError: 'NoneType' object has no attribute 'Create'
> SQL state: XX000
>
> However, this function on the same server and database returns to me all
> the gdal drivers. Any idea how I can diagnose this problem?
>
> CREATE OR REPLACE FUNCTION gdal_drivers()
>   RETURNS SETOF text AS
> $BODY$
>
> from osgeo import gdal
> driver = gdal.GetDriverByName('MEM')
> rast = driver.Create('', 2, 4, 1, gdal.GDT_Int32)
>
> names = []
> driverall = gdal.GetDriverCount()
> for i in range(gdal.GetDriverCount()):
> driver = gdal.GetDriver(i)
> drivername = driver.ShortName
> names.append([i,drivername])
>
> return names
>
> $BODY$
>   LANGUAGE plpythonu VOLATILE
>
>
>
>
>
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/postgis-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20160518/8641fd6b/attachment.html>


More information about the postgis-users mailing list