GoLocal!
Ava armatuurlaud
Bubble arendaja juhendTasuta käitusaeg 4.1.23

Turvaline mitmekeelne otsing rakendusega GoLocal Query

Algajasõbralik juhend GoLocali peamise elemendi, valikulise elemendi GoLocal Query, Bubble automaatse otsingu juhtelementide ja kõige turvalisema viisi tõlgitud liideste andmebaasiloogikast lahus hoidmiseks.

Põhikontseptsioon

Rakendusel Bubble on see tavaliselt olemas kanooniline keel milles loodi selle andmebaasi sildid, Option Set kuvaväärtused ja kõvakodeeritud tekstitingimused. GoLocal võib neid väärtusi näidata teises keeles, kuid Bubble loogika võib siiski oodata kanoonilist väärtust.

Projekti allikas

inglise keel

Salvestatud kategooria: Uudised

Külastaja näeb

prantsuse keel

Nähtav silt: Actualités

Bubble otsingud

Uudised

Normaliseeritud lähteväärtus

Ohutusreegel: nähtav sisend jääb kasutajale ja salvestamisele suunatud väärtuseks. Eraldi normalized_query kasutatakse ainult siis, kui Bubble vajab selgesõnaliselt lähtekeelset teksti.

Millist GoLocali elementi peaksin kasutama?

Pistikprogramm sisaldab kahte erinevat mittevisuaalset Bubble elementi. Nad lahendavad erinevaid probleeme. Enamik lehti vajab peamist GoLocal! element; vajavad ainult konkreetse tekstiotsingu probleemiga lehti GoLocal Query.

Plugina saadavus: eraldiseisev GoLocal Query element sisaldub Free/API-klahvi Bubble pistikprogrammis ja töötab aktiivse GoLocali SaaS projektiga.

Vajalik tõlkija

GoLocal!

See on peamine tõlkemootor. See laadib teie projekti, tõlgib lehe sisu, kuvab keelevidina ning avaldab praegused keele- ja tõlkesündmused.

  • Tavaliselt asetage üks eksemplar korduvkasutatavasse päisesse või mõnda teise lehe jagatud elementi.
  • Kasutage selle välju võtme API, vidina, välistatud ID-de/valijate ja allika/sihtmärgi käitumise jaoks.
  • Kasutage selle olekuid ja sündmusi, kui Bubble peab teadma valitud keelt või tõlke olekut.

Valikuline loogikaabiline

GoLocal Query

See ei tõlgi lehte ega kuva vidinat. See teisendab ühe külastaja sisestatud otsingufraasi teie rakenduse kanooniliseks lähtekeelseks fraasiks Bubble loogika jaoks.

  • Lisage see ainult siis, kui tavaline sisend peab otsima või võrdlema projekti lähtekeeles salvestatud teksti.
  • Kasutage ühte päringuelementi sõltumatu otsingusisendi kohta.
  • Ärge kunagi kasutage normalized_query kasutaja loodud nimede, pealkirjade, kirjelduste või sõnumite salvestamiseks.
Bubble element või ülesanneMida kasutada
Tekst, nupp, rühm, korduvkasutatav kasutajaliidesAinult GoLocal!
Sisend, mis salvestab kasutajaandmeidAlgne sisendväärtus
Lihtsisend, mis filtreerib ingliskeelse tekstiväljaÜks GoLocal Query
Bubble SearchBox või rippmenüüAutomaatne
Pärand või Select2 MultiDropdownAutomaatne
Mitmerealine sisend, Quill, contenteditableAlgne toimetaja väärtus
Korduv rühmapiirangEsmalt asi/Option Set/ID
E-post, telefon, parool, number, kuupäev, ID, failAlgne väärtus
Lihtne otsus: kui väärtust kuvatakse, kasutage peamist tõlkijat. Kui väärtust salvestatakse, kasutage algset Bubble väärtust. Kui tõlgitud fraas tuleb vastendada lähtekeelse tekstiga, kasutage toetatud automaatjuhtelementi või ühte spetsiaalset elementi GoLocal Query.

Eelistatud Bubble arhitektuur

Kui võimalik, looge tingimused Bubble asjade, Option Set valikute, kordumatute ID-de või stabiilsete koodide – mitte tõlgitud kuvateksti – ümber. Tõlge peaks muutma seda, mida inimene näeb, mitte kirje identiteeti.

Parim: võrrelge objekti

Current cell's Article's Category
is Category News

Külastaja võib näha „Actualités”, kuid Bubble võrdleb valikut Category Thing või Option Set ise.

Kasutage päringut ainult teksti sobitamiseks

Category name contains
GoLocal Query Categories's normalized_query

See on asjakohane, kui andmebaas või olemasolev tingimus otsib tõeliselt kanoonilist ingliskeelset teksti.

Näidiskategooria komplekt

Kanooniline inglise keelPrantsuse ekraan
UudisedAktuaalid
ArvamusArvamus
ÕpetusÕpetus
JuhendJuhend
ÜlevaadeAvis
AjaluguAjalugu
muudAutre

Automaatne pöördotsing

Tasuta käitusaeg 4.1.23 rakendab pöördotsingu automaatselt ainult Bubble juhtelementidele, mille eesmärk on olemasoleva väärtuse valimine või otsimine:

Bubble SearchBox
Bubble rippmenüü
Pärand Bubble MultiDropdown
Praegune Select2 MultiDropdown

Külastajate tüübid: Aktuaalid

Kontrollmängud: Uudised

Külastaja näeb jätkuvalt: Aktuaalid

Igal toetatud juhtelemendil on isoleeritud vastupidine olek, sealhulgas mitu juhtelementi samal lehel. Ärge lisage elementi GoLocal Query ainult selle sisseehitatud käitumise dubleerimiseks.

Bubble SearchBox

Kasutage seda, kui külastaja otsib ja valib olemasoleva Bubble asja. GoLocal aitab tõlgitud fraasil sobitada SearchBox kasutatava kanoonilise tekstiga.

Bubble rippmenüü

Kasutage seda olemasoleva staatilise või dünaamilise loendi ühe valiku tegemiseks. Valitud suvand jääb tegelikuks Bubble väärtuseks.

Pärand Bubble MultiDropdown

Kasutage seda vanemates Bubble rakendustes mitme olemasoleva valiku valimiseks. Iga juhtelement normaliseeritakse iseseisvalt.

Select2 MultiDropdown

Kasutage seda praeguste otsitavate mitme valiku juhtelementide jaoks. Trükitud otsingutekst võib ühtida lähtekeele valikute siltidega tavalisi sisendeid muutmata.

Tavaline Bubble sisend ei ole tahtlikult automaatne. Pistikprogramm ei suuda kindlalt arvata, kas sisend on otsingukast, inimese nimi, andmebaasi pealkiri, tingimuslik väärtus või tekst, mis salvestatakse. Lisage GoLocal Query ainult selle konkreetse sisendi jaoks, mille allavoolu loogika nõuab kanoonilist teksti.

Kasutades GoLocal Query

Kasutage mittevisuaalset GoLocal Query element, kui tavaline Bubble sisend juhib tahtlikult tekstiotsingut, lähtekeele tingimuslikku või tausta/API filtrit.

1

Lisage selle sisendi jaoks üks päringuelement

Asetage see üks kord lehele või korduvkasutatavasse elemendisse, millele sisend kuulub. Ärge asetage seda igasse korduva rühma lahtrisse.

Element name: GoLocal Query Categories
2

Siduge selle päringuväli

Query = Input Category Search's value
Enabled = yes
Debounce (ms) = 180

Bubble värskendab elementi automaatselt, kui dünaamiline sisendi väärtus muutub. Sisendiga muudetud töövoogu pole vaja.

3

Kasutage normalized_query ainult lähtekeele loogikas

GoLocal Query Categories's normalized_query

Kasutage seda väärtust korduva rühma piirangus, täpsemas filtris, tekstitingimuses või API parameetris, mis eeldab inglise keelt.

4

Hoidke salvestused ja valideerimine sisendiga ühendatuna

Save Category Name = Input Category Search's value

Ärge kunagi asendage tavalist salvestusväärtust, meilikontrolli, numbrite arvutamist ega kohustusliku välja kontrollimist normalized_query-ga.

Mis juhtub, kui külastaja tipib?

  1. 1Sisend muutub: Bubble edastab täpse praeguse sisendväärtuse väljale Päring.
  2. 2Debounce ootab korraks: Vaikimisi 180 ms takistab iga üksiku klahvivajutuse päringu esitamist.
  3. 3Uusim fraas on normaliseeritud: Näiteks "Actualités" on lahendatud "Uudised". Vanemad lõpetamata taotlused ei saa uusimat tulemust üle kirjutada.
  4. 4Bubble võtab olekud vastu: normalized_query muutub uudisteks, is_normalizing muutub eitavaks ja normaliseeritud sündmus käivitub.
  5. 5Ainult kavandatud loogika kulutab seda: Korduv rühm, tingimuslik või API filter kasutab normalized_query; salvestab endiselt algset sisendit.

Praktilised Bubble näited

Korduv rühm

Otsige prantsusekeelsest sisendist ingliskeelsete artiklite kategooriaid

Külastaja tüübid Aktuaalid. Andmebaas salvestab Uudised. Määrake korduva rühma kategoorianime piiranguks:

GoLocal Query Categories's normalized_query

Eelista Category Thing/Option Set valikut, kui see on saadaval; kasutage teksti normaliseerimist ainult siis, kui filter on tõesti tekstipõhine.

Bubble tingimuslik

Võrrelge kõvakodeeritud lähtekeele väärtusega

When GoLocal Query Status's is_normalizing is no
and GoLocal Query Status's normalized_query is "Archived"

Kui tingimus juhib kriitilist töövoogu, oodake, kuni normaliseerimine lõpeb. Ainult kuva filtreerimiseks võib piisata toorest tagavarast.

Taustaprogramm või API

Kanoonilise keele päringu saatmine lõpp-punkti

API parameter q = GoLocal Query Products's normalized_query
Run only when is_normalizing is no

ID-d, UUID-d, meilid, märgid, kuupäevad ja numbrilised väärtused peaksid GoLocal Query-st mööda minema ja need tuleb saata muutmata kujul.

Täielik algaja tutvustus

Filtreerige artikleid tõlgitud kategooria nime järgi

Oletame, et rakendus on loodud inglise keeles. Andmebaasi väli Kategooria nimi sisaldab Uudised, aga prantslasest külaline tipib Aktuaalid tavalisse sisendisse.

1. Nimetage sisend Bubble selgelt
Input Category Search
2. Lisa ja nimeta üks mittevisuaalne abimees
GoLocal Query Categories
3. Seo abiväli
GoLocal Query Categories → Query
= Input Category Search's value
4. Määrake korduva rühma tekstipiirang
Search for Articles
Category name = GoLocal Query Categories's normalized_query
5. Hoidke loomis-/redigeerimistöövood muutmata
Create a new Article's title
= Input Article Title's value

Tulemus: külastaja otsib prantsuse keeles, Bubble leiab ingliskeelse andmebaasi väärtuse ja kasutaja sisestatud teksti ei kirjutata ümber ega salvestata muul kujul.

Mitme sisendiga lehed

Looge iga sõltumatu otsingukonteksti jaoks üks GoLocal Query eksemplar. Igal eksemplaril on oma väärtus, tagasilöögitaimer, jada valvur, olekud ja sündmused, nii et üks sisend ei saa teist üle kirjutada.

Sisestage artikliotsingGoLocal Query ArtiklidArtiklite korduv rühm
Sisestage kliendiotsingGoLocal Query kliendidKliendi API filter
Sisestage sildifilterGoLocal Query sildidSildi seisukord
Ärge taaskasutage ühte päringuelementi mitteseotud sisendite jaoks. Kui väärtus peab ületama korduvkasutatava elemendi piiri, kopeerige selle konkreetse elemendi normalized_query spetsiaalsesse kohandatud olekusse Bubble, kui see normalized sündmuste tulekahjud.

Mis peab jääma puutumata

Kasutage GoLocal Query

  • Vabas vormis tekst, mida kasutatakse kanooniliste andmebaasiväljade otsimiseks
  • Tekstitingimused, mis eeldavad ingliskeelset konstanti
  • API päringuparameetrid, mille taustaprogramm eeldab inglise keelt
  • Kolmanda osapoole otsingu juhtelemendid, mis paljastavad nende sisestatud päringu Bubble-le

Ärge kasutage seda

  • Nimed, pealkirjad, kommentaarid, kirjeldused või kasutaja loodud sildid salvestatakse
  • Quill, rikastekst, contenteditable või mitmerealine sisend
  • Meilid, paroolid, telefonid, ID-d, kuupäevad, numbrid, failid või kinnitus
  • Bubble Asjad või Option Set objektid, mida saab otse võrrelda

Salvestatud kasutaja sisu kuvatakse hiljem

Kaitstud sisendit saab hiljem siiski tavalises Bubble tekstielemendis renderdada. Märkige kuvamiskonteiner korduvkasutatava klassiga, näiteks .gl-user-content ja lisage see peamise GoLocali elemendi hulka do_not_translate_selectors. Korduvate rühmade puhul kasutage sama HTML ID-d ridades dubleerimise asemel klassi/valijat.

Väljad, olekud ja sündmused

Väljad

Querytext

Sidumine ühe nähtava sisendi Bubble väärtusega.

Enabledyes/no

Vaikimisi jah. Kui see on keelatud, läbib kärbitud tekst muutmata kujul.

Debounce (ms)number

Vaikimisi 180. Soovitatav otsinguvahemik on 150–250 ms.

osariigid

original_querytext

Täpne väärtus, mis saadi Bubble-lt enne normaliseerimist.

normalized_querytext

Kanooniline lähtekeele väärtus otsingu- või võrdlusloogika jaoks.

is_normalizingyes/no

Jah, kuni lahendatakse uusim mittetühja päring.

normalization_foundyes/no

Jah, kui leiti lähtekeelne vastendus.

last_errortext

Tehnilise rikke teade; normaalse töö ajal tühjaks.

normaliseeritud

Vallandub pärast viimase päringu lõppemist. Use it when a workflow must wait or copy the result into a custom state.

normalization_failed

Põleb tehnilise rikke tõttu. Toorpäring jääb kasutatavaks tagavaraks ja üksikasjad kuvatakse failis last_error.

Tavaliste Bubble seadistuste tõrkeotsing

normalized_query võrdub alati töötlemata sisendiga

Veenduge, et põhielement GoLocal! on olemas ja valmis, projekti lähtekeel on õigesti konfigureeritud ja päringuväli on seotud soovitud sisendiga. Tundmatu fraas võib tahtlikult kasutada toorteksti turvalise tagavarana.

Korduv rühm näitab lühidalt eelmist tulemust

Rangeks filtreerimiseks näidake laadimisolekut või käivitage lõplik otsing ainult siis, kui päringu elemendi is_normalizing olek on ei. Järjestuse valvur takistab vanema päringu asendamist uuema tulemusega.

Salvestatud pealkiri või kirjeldus on muudetud

Salvestamise töövoog viitab normalized_query või tõlgitud kuva tekstile. Muutke see tagasi algsele sisendi, mitmerealise sisendi või rikastekstiredaktori väärtusele. GoLocal Query on mõeldud ainult loogika sobitamiseks.

Kaks sisendit segavad üksteist

Andke igale sõltumatule otsingule oma GoLocal Query element. Ärge lülitage dünaamiliselt ühte abistajat mitteseotud sisendite vahel.

Kolmanda osapoole valija ei sobita vastupidist

Automaatne tugi on piiratud Bubble SearchBox, Bubble rippmenüüga, pärand MultiDropdown ja Select2 MultiDropdown. Kui kolmanda osapoole juhtelement paljastab trükitud teksti tekstile Bubble, ühendage see tekst spetsiaalse GoLocal Query elemendiga.

Salvestatud kasutajasisu tõlgitakse, kui seda hiljem kuvatakse

Lisage selle kuvamahutisse korduvkasutatav klass, näiteks .gl-user-content, ja lisage see valija põhielemendi GoLocal! lahtrisse do_not_translate_selectors.

Sisend on korduvas rühmas

Ärge asetage ühte päringu elementi igasse lahtrisse ja ärge dubleerige HTML ID-sid. Eelista korduva rühma filtreerimist enne selle renderdamist; vastasel juhul hoidke päringuabimees väljaspool korduvat rühma ja edastage sellele üks valitud/otsingu väärtus.

Vastuvõtmise kontrollnimekiri

  1. 1Otsige sama kirjet inglise ja prantsuse keeles.
  2. 2Sisestage kiiresti ja kinnitage, et vanem tulemus ei asenda kunagi uuemat.
  3. 3Tühjendage sisend ja kinnitage korduvad grupi lähtestused.
  4. 4Vahetage keelt, kui sisend pole tühi.
  5. 5Testige kahte sõltumatut otsingusisendit samal lehel.
  6. 6Salvestage prantsuskeelne pealkiri rõhumärkidega ja kinnitage, et täpne tekst on salvestatud.
  7. 7Tippige ja kleepige Quill; kumbagi teed ei tohiks ümber kirjutada.
  8. 8Testige tundmatut päringut ja veenduge, et toores tagavara hoiab lehe kasutatavana.
  9. 9Veenduge, et iga salvestamise töövoog kasutaks algset sisendi väärtust.
  10. 10Kinnitage kriitilised lähtekeelsed töövood, oodake is_normalizing = ei.

Kiire otsustamise reegel

Kuvamine ja salvestamine kasutavad sisendit. Kanooniline teksti sobitamine kasutab GoLocal Query.

Kui Bubble saab võrrelda asja, suvandit Option Set, ID-d või stabiilset koodi, kasutage seda objekti otse. Lisage GoLocal Query ainult siis, kui tõlgitud vabas vormis teksti väärtus peab vastama kanoonilisele lähtekeelsele tekstile.