Üdv!
Egy modul írásakor a frissítésekhez készül mymodule_update_X() fv (adatbázisfrissítések).
Ha menet közben futtatom a update.php-t, akkor szépen meg is frissül a modul.
Viszont, ha a modul újonnan telepítem fel, akkor a frissítések nem futnak le. De a Drupal adatbázisban a system táblában a schema_version mégis a legutóbbi frissítés értéke kerül bele, pl. 7006. (Hibaüzenete nincs.)
Miért? Mit hibázok?
Hogyan kellene ennek működnie?
Én úgy emlékeztem, hogy egy modul újonnan történő telepítéskor az update_X() függvények is lefutnak, ami logikus is lenne.
Drupal verzió:
Fórum:
_install() fv?
Vagy ilyenkor a mymodule_install() fv-be bele kellene tenni az _update_X() fv-eket?
Nem
Már miért futna le? Szerinted egy drupal telepítéskor pl a system module majd' 80 update hookjának szaladni kellene?
hook_installban neked kell gondoskodni arról, hogy az adatbázisod a megfelelő állapotban legyen, de ezt nem a hook_update_N függvények hívogatásával kell elérned.
----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.
win!
Ennél szebben nem is lehetett volna megfogalmazni! :)
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
_install
Hogyan kellene futtatni ezeket a frissítéseket? Nem találokrá mintát. Merre keresgéljek?
update.php
Meghívod a böngészőben az update.php fájlt.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
schema_version
Annyi baj van ezzel, hogy a modultelepítés után az update-ek nem futnak le. Mégpedig azért, mert a system táblában a frissítés schema_version száma beíródik (ahogy írtam is az eredeti kérdésben). Ezért nem futtatja le.
Bár nem értem, hogy miért írja be ezt a schema verziot, ha nem futtatja le. Valószínű valamit elnézek... :(
értelmezd
Kérlek értelmezd Gábor válaszát, minden szükséges információt megtalálsz benne.
Telepítéskor a modul a legfrissebb sémára áll, neked kell az install funkciókat szinkronban tartanod a frissítésekkel.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
schema?
Igen, csak akkor nem értem, hogy hogyan kellene elérnem. De az _update_X() fveket "nem futtathatom". Valószínű fáradt vagyok már... :)
A _schema()-ba is tegyem bele azokat a változásokat, amik az _update_X() fv-ekben vannak?
install és schema
A modulodban megvalósított install és schema függvénynek olyan állapotban kell lennie, mintha a frissítések lettek volna futtatva.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
ok
ok, köszönöm! ...és elnézést!
kicsit elfáradtam, nem is kérdezek többet most. :)