afaik se da i na nested fieldu udelat index (nezkousel sem, negugloval sem,
mazu se ahoj)

-----
'aknerats'[::-1]

On Dec 6, 2017 18:20, "Vláďa Macek" <[email protected]> wrote:

> Čau Honzo,
>
> díky.
>
> Nevylučuju nedostatečný návrh a rád se inspiruju. ;-)
>
> Cílem je jednoduše case-insensitive accent-insensitive substring search na
> hodnotě uvnitř JSONu v pg.
>
> Tohle máme v modelu
>
>     fc_data = JSONField(blank=True, editable=False, default=dict)
>
> a jméno osoby dostáváme v Python takhle:
>
>     fc_data['contactInfo']['fullName']
>
> Takže jméno je zanořený v JSONu. Jména se nemění často a určitě by se dala
> vytáhnout do formy podobnější vyhledávacímu stroji/lépe indexované tabuli.
> Napadlo nás, zda by cestou nejmenšího odporu nebylo využití toho, že to je
> pg typ `jsonb` a Django má už snad umět do JSONu koukat. Zatím jsem
> nestudoval a je to vcelku specifický případ, tak sonduju, jestli už někdo
> nevyřešil, případně jak či jakým směrem.
>
> psycopg2~=2.7.0
> django~=1.11.0
>
> Díky,
>
> Vláďa
>
>
> On 6.12.2017 16:04, Honza Král wrote:
> > Ahoj,
> >
> > hledani pomoci __unaccent__icontains nebude nikdy efektivni z definice
> > - vzdy se bude jednat o full scan na tech datech.
> >
> > Muzu se zeptat, na co takovy lookup potrebujes? Hodne silne mi to
> > zavani nestastnym navrhem kde mas data v klicich misto hodnotach...
> >
> >
> > Honza Král
> > E-Mail: [email protected]
> > Phone:  +420 606 678585
> >
> >
> > 2017-12-06 14:25 GMT+01:00 Vláďa Macek <[email protected]>:
> >> Zdar,
> >>
> >> postgres i Django umožňuje fajnově unaccented case insensitive hledání v
> >> normálních fieldech. Tj. name__unaccent__icontains
> >>
> >> Zprovoznil jste někdo efektivní hledání stejného typu v klíčích
> nativního
> >> JSONFieldu v novém Djangu? Ideálně trochu čistě bez raw SQL, ale přežil
> >> bych to.
> >>
> >> Díky. :-)
> >>
> >> Vláďa
>
> --
> --
> E-mailová skupina [email protected]
> Správa: http://groups.google.cz/group/django-cs
> ---
> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny
> django-cs ve Skupinách Google.
> Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny,
> zašlete e-mail na adresu [email protected].
> Chcete-li zobrazit tuto diskusi na webu, navštivte
> https://groups.google.com/d/msgid/django-cs/65f9b392-5ec3-
> a564-6618-e8db788e8a07%40sandbox.cz.
> Další možnosti najdete na adrese https://groups.google.com/d/optout.
>

-- 
-- 
E-mailová skupina [email protected]
Správa: http://groups.google.cz/group/django-cs
--- 
Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny django-cs 
ve Skupinách Google.
Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, zašlete 
e-mail na adresu [email protected].
Chcete-li zobrazit tuto diskusi na webu, navštivte 
https://groups.google.com/d/msgid/django-cs/CA%2B7MNVp%3D%3DkzAS%2BYFpoZF5OGhOi8MfqnBHeg_Fit9%2BA-wHQ0mow%40mail.gmail.com.
Další možnosti najdete na adrese https://groups.google.com/d/optout.

Reply via email to