Tartalom
Ismertető
A gépi név, vagy programok által használt név (angolul: "machine name") egy olyan Drupal-ban használatos név, amellyel a rendszer különböző részei hivatkozhatnak az ilyen nevekkel ellátott entitásokra. Ezek az entitások lehetnek modulok, sminkek, taxonómia szavak, vagy akár egy űrlap mezője is, stb.
A gépi név legtöbbször csak egy kisbetűkből álló alfanumerikus karakterlánc lehet, ami még kiegészülhet "_" karakterekkel is ([a-z0-9_]), illetve a felhasználási területtől függően még kötőjelet (-) is tartalmazhat. A gépi neveknek egyedieknek kell lenniük hogy általuk egyértelműen beazonosíthatók legyenek a különböző entitások.
A Drupal CMS rendszer alaprendszerének és kiegészítőinek fejlesztése során ezekkel a nevekkel lehet hivatkozni például egy modulra, sminkre vagy bármi egyéb entitásra.
Felhasználási példák
A Drupal sok helyen használja a gépi neveket (programok által használt nevek / machine names), most ezek közül a teljesség igénye nélkül megnézünk néhány felhasználási területet.
Tartalomtípus mezők
Amikor egy tartalomtípuson belül új mezőt hozunk létre, akkor a mező címkéjének (emberek által használt név) a megadásakor a rendszer párhuzamosan létrehozza ezt a gépi nevet a címke alapján:
Továbbá a gépelés közben alakítja át a megadott címke alapján a gépi nevet, hogy az csak a fentebb már említett karaktereket tartalmazza.
A gépi név (programok által használt név / machine name) még az első használat előtt módosítható, amit a címke mező mellett gépeléskor megjelenő "Programok által használt név" utáni Szerkesztés link segítségével tehetünk meg:
Itt természetesen csak a rendszer által létrehozott prefix utáni részt módosíthatjuk, ami azután szűrésen megy át:
Itt szándékosan beletettem egy nagy ékezetes betűt, amire a rendszer hibát dobott. A gépi nevek esetén tehát szigorúan be kell tartani a szabályokat.
Amikor egy tartalomtípusba bekerül az első rekord, onnantól kezdve a gépi név (és a többi mezőt definiáló rész) már nem módosítható. Ilyenkor az alábbi figyelmeztető szöveg jelenik meg, ha rámegyünk a mező szerkesztésére:
"Ehhez a mezőhöz már léteznek adatok az adatbázisban, ezért a mező beállításait többé nem lehet megváltoztatni."
Modulok
A Programok által használt neveknek (gépi név / machine name) a Drupal alaprendszer és harmadik felektől származó modulok esetén is ugyanaz a funkciójuk, csupán annyiban térnek el a fentebb leírtaktól, hogy ezeket nem a Drupal rendszer felhasználói határozzák meg, hanem a modulok fejlesztői. Ha betekintünk a modulok adminisztrációjába, akkor a bekapcsolható modulok listájában ha kinyitogatjuk a modulok leírásait, akkor itt láthatjuk a modulok gépi neveit, amiket itt "Programok által olvasható név" címmel ellátva jelenít meg a magyar fordításban:
Ha pedig benézünk a könyvtárstruktúrába, akkor a webgyökér alatt a /core/modules/ alkönyvtárban találhatjuk a már fentebb megtekintett modulok könyvtárait is, amik ugyanezekkel a nevekkel szerepelnek:
Persze itt minden modul jelen van, ellentétben a webes admin felületen, ahol vannak olyan modulok, amik csak bizonyos feltételek alapján jelennek meg a listában. A harmadik felektől származó modulok esetén is ugyanígy van, amiket a webgyökér alatti /modules és /modules/contrib könyvtárakban találhatunk:
Az elsőbe kerülnek a weben keresztül telepített modulok fájljai, míg az alatta lévő contrib/ alkönyvtárba pedig a Composer PHP csomagkezelő segítségével telepített modulok. Ezen a telepítésen éppen csak a Color backport modul található a contrib/ könyvtárban, amit a Composer segítségével telepítettem.
A lényeg tehát hogy a Drupal rendszerben a modulok gépi nevei (Programok által olvasható név) megegyeznek a telepítési könyvtárneveikkel. Itt annyi a különbség a fentebb kitárgyalt mezőnevekhez képest, hogy itt a modulok gépi nevei tartalmazhatnak "-" kötőjeleket is.
Szerepkörök
A szerepkörök esetén is hasonló a helyzet, mint a mezőneveknél:
Itt is megjelenik a "Programok által használt név". És természetesen itt is van lehetőség új szerepkörök felvételére:
Ami ugyanúgy működik, mint a mezőnevek esetén, csak itt nem kerülnek a gépi nevek elé külön prefixek.
Nézetek
A Drupal nézetek segítségével gazdagon testre szabható lekérdezések készíthetők, ahol a rendszer szintén a gépi nevekre (programok által használt név / machine name) támaszkodik, ami az alábbi képen a második hasábban található:
Például ezek alapján kapcsolja össze a Drupal a blokkokkal a nézeteket, amikor kiteszünk egy listát valamelyik blokk régióba.
Blokkok
A Drupal rendszerben a blokkoknak is van saját gépi nevük, például:
Taxonómia szótárak
A taxonómia szótárak segítségével a Drupal tartalmak könnyen csoportosíthatók a tartalmak tematikája szerint. A szótárak taxonómia kifejezéseket tartalmazhatnak, melyekkel címkézhetők, kategorizálhatók a felvitt tartalmak. A Drupal a taxonómia szótárak esetén is használ gépi nevet (programok által használt név):
Itt is a gépi nevek segítségével van lehetőség összekapcsolni a kívánt taxonómia szótárat a megfelelő tartalomtípussal, stb.
Konklúzió
Amint láthatjuk, a Drupal sok helyen támaszkodik ezekre a "programok által használt nevekre" (gépi név / machine name), amiket szigorú szabályok alapján is kezel, hogy a rendszer működése zökkenőmentes legyen.
- 49 megtekintés