Hogyan készítsünk egy entitást a drupalban?
A mai leckében elmondom, hogyan kell írni a lényeged. Az Entity API segítségével írunk. ezért le kell töltenünk és telepítenünk ezt a modult. Hozzon létre például egy entitásterméket. A modul fájlszerkezete ez:
1. Hozzon létre információkat a modulról a product.info weboldalon:
2. A termék telepítésében leírjuk azt a táblázatot, amelyben az entitások információit tároljuk:
3. Folytassa a termékmodullal. A táblázatban létrehoztam az állapot oszlopot, amelyben a termék állapotát tároljuk, mindegyikben 3 állapotom van, mindegyik állapothoz konstansot hozunk létre:
4. Mutassa be a lényegünkre vonatkozó információkat a hook_entity_info () horogban:
5. Hozzon létre egy product_uri () függvényt, amely az entitás uri-jét adja vissza:
6. Hozzon létre engedélyeket, amelyekre a jövőben szükségünk lesz, ezért a hook_permission () hookot implementáljuk:
7. Hozzon létre egy függvény product_access () függvényt, amely ellenõrzi, hogy a felhasználó végrehajthatja-e a gazdálkodó bármely műveletét:
8. Hozzon létre olyan függvényeket, amelyek betölti az entitást az adatbázisból:
9. Hozzon létre olyan függvényeket, amelyek eltávolítják az entitást az adatbázisból:
10. Hozzon létre az egység lényegét. Ehhez implementáljuk a hook_theme () -t:
11. Hozzon létre olyan függvényeket, amelyek kiadják az entitásokat:
12. A hook_menu () -ban létrehozzuk azokat a lapokat, amelyek szükségesek a modul működéséhez:
13. A hook_admin_paths () használata. mondja el a rendszerhez, hogy mely oldalak adminisztratívak:
14. A termékmodul utolsó funkciója a product_status_get_title (), amely a termékállapot-azonosító alapján egy emberi baráti állapotnevet ad vissza:
18. Amint látja, egy entitás létrehozásához és szerkesztéséhez ugyanazt a product_form űrlapot használom. hozza létre az űrlapot létrehozó függvényt:
19. Hozzon létre egy entitás törlési űrlapot:
21. Most menj a product.tpl.php sablonhoz:
21. Továbbra is a helyzet a kis, ha emlékszel, a forma létrehozása / szerkesztése terméket tettünk veritkalnye lapok, így a termék-fieldset-summaries.js fájl adjunk hozzá néhány sornyi kódot díszíteni ezeket a lapokat: