Re: ISQLQuote vs. str subclass

Поиск
Список
Период
Сортировка
От Jonathan Rogers
Тема Re: ISQLQuote vs. str subclass
Дата
Msg-id 55BBC421.20504@socialserve.com
обсуждение исходный текст
Ответ на Re: ISQLQuote vs. str subclass  (Daniele Varrazzo <daniele.varrazzo@gmail.com>)
Список psycopg
On 07/31/2015 12:08 PM, Daniele Varrazzo wrote:
> On Fri, Jul 31, 2015 at 3:57 PM, Jonathan Rogers
> <jrogers@socialserve.com> wrote:
>> I have a custom subclass of str called LiteralValue, the purpose of
>> which is to represent a string which should be passed to Postgres
>> unmodified. Its getquoted() method simply returns itself. This type
>> worked as intended with psycopg2 up to version 2.2.x. However, versions
>> of psycopg2 2.3 and newer no longer call getquoted() on objects of type
>> LiteralValue. Is this an expected change in behavior?
>
> I don't think so, not intentionally at least. If the class is
> self-adapting, does it expose a __conform__() method? If it has an
> associated wrapper is it registered?
>
> http://initd.org/psycopg/docs/advanced.html#adapting-new-python-types-to-sql-syntax
>
> If you post the implementation I can try and take a look.

Here's a sample script which demonstrates the difference in behavior.
Using psycopg2 2.2.1, it prints four lines of "select 5". Using psycopg2
2.3, the line using a LiteralValue is "select '5'".

--
Jonathan Ross Rogers

Вложения

В списке psycopg по дате отправления:

Предыдущее
От: Daniele Varrazzo
Дата:
Сообщение: Re: ISQLQuote vs. str subclass
Следующее
От: Gregory Arenius
Дата:
Сообщение: How do I convert numpy NaN objects to SQL nulls?