UUIDs (Qaybaha Aqoonsiga Gaarka ah ee Caalamiga ah) waa 128-bit oo qiimayaal ah oo lagu isticmaalo xog-ururinta, iyo waxyaabo kale, si si gaar ah loogu aqoonsado gelinta miiska. Waxay u taagan yihiin sidii xadhkaha hexadecimal oo loo qaybiyay shan kooxood oo ay kala soocaan jilaagayaal (tusaale ahaan.: 09fe49b3-4d2b-471c-ac04-36c9e706b85f). Waxaa jira tiro badan Doodaha ku saabsan faa'iidooyinka iyo khasaarooyinka UUID-yada ku jira xog-ururinta - waa lagama maarmaan in la qaybiyo nidaamyada.
Adeegyada yaryar iyo codsiyada kireysiga badan, sidaas darteed waxaa habboon in la tixgeliyo soo bandhigida UUIDs. Ka beddelashada nooca xogta BigInteger una beddelo UUID (kala duwanaansho la kala sooci karo oo ah nooca UUID 4 ee qeexida RFC 4122 ) ee qaab dhismeedka PHP Laravel si degdeg ah ayaa loo sameeyaa: Marka hore, waxaan abuurnaa sifo cusub:
2aa7136d977617159be1834eaf40e871
Kadibna waxaan ku darnaa dhammaan moodooyinkayaga:
2aa7136d977617159be1834eaf40e871
Gudaha Laravel 9⁺ tani xitaa way fududahay: halkan waxaan horeyba ugu haynay astaanta HasUuids oo diyaar u ah in la isticmaalo. Haddii kale, qaab-dhismeedku waxa kale oo uu bixiyaa taageerada la xidhiidha, laakiin weli waa nooca xogta aan la garanayn ULID , taas oo noqon karta mid xiiso leh sababtoo ah akhrin wanaagsan iyo kala saarid.
Qaybta adagi waa guuritaanka xogta jirta. Qiyaastii mid ayaa ku socon karta sida soo socota:
- Ku dar tiirar cusub oo UUID ah oo leh qiimayaal madhan dhammaan miisaska
(mid kastaa wuxuu ku saleysan yahay dhammaan tiirarka muhiimka ah ee aasaasiga ah iyo kuwa ajnabiga ah) - Qor qiimaha UUID tiirarka cusub
(oo leh furayaasha aasaasiga ah ee kor u kaca iyo furayaasha shisheeye ee la cusbooneysiiyay) - Tirtir tiirarka asalka ah
- Magac u bixi tiirar cusub
Waxaa jira caqabado dhowr ah halkan: Geedi socodka socdaalka wuxuu qaataa waqti dheer waxaana tiirar cusub lagu dhejiyaa dhamaadka miiska (xalka suurtagalka ah: tiirarka dalxiiska ). Dariiqo toos ah oo aad u badan ayaa ah in si toos ah loo beddelo tiirarka.
Haddii aad dhigto PostgreSQL Si aad tan u sameyso, waxaad (dabcan, ka dib kaydinta) fulin kartaa su'aasha soo socota, tusaale ahaan (kahor waxaad ku qori kartaa dhammaan jadwalka aad rabto inaad ka saarto Z). 19/31 bedel iyo sidoo kale xeerarka gaarka ah ee Z. 37/39 ku dar) oo koobiyo dhammaan weydiimaha ka soo baxay:
2aa7136d977617159be1834eaf40e871
Haddii aad hadda si wada jir ah ufuliso weydiimaha la soo saaray, waxa aad ku guuri doontaa kaydka xogta muddo gaaban gudaheed. UUID-yada loo sameeyay habkan ma waafaqsana qeexida v4, laakiin waxay u kala horreeyaan qaamuus ahaan sidii qoraalladii hore, ha ku dhicin UUID-yada cusub (mar walba waxaa jira mid ka mid ah kooxda 3aad ee v4). 4, had iyo jeer mid ka mid ah kala duwanaanshaha guuray 0), oo sidoo kale ka dhigan in UUID-yada cusub ay had iyo jeer ka weyn yihiin UUID-yada soo guuray.
Intaa ka dib, waxaa lagugula talinayaa inaad hesho dhammaan kaydka Laravel (php artisan cache:clear && php artisan route:clear && php artisan config:clear && php artisan view:clear && composer dump-autoload && rm -rf bootstrap/cache/*/*) iyo fadhiyada orodka (rm -f storage/framework/sessions/*) inuu faaruqiyo. Dabcan, wax walba sidoo kale waxaa lagu hirgelin karaa socdaalka Laravel:
2aa7136d977617159be1834eaf40e871
Beddelka ka dib waxa la isticmaali karaa socdaalka mustaqbalka bigIncrements ama. bigInteger markaas uuid:
2aa7136d977617159be1834eaf40e871