Hvis et opsætnings-/opgraderingsscript ikke kører, er der nogle ting, du skal kontrollere:
-
Indlæser Magento dit modul? Gå til System> Konfiguration> Avanceret> Avanceret og se, om dit modul vises på listen "Deaktiver moduloutput". Hvis det ikke gør det, indlæser Magento slet ikke dit modul, og vil derfor ikke køre nogen opsætningsscripts. Som Cags bemærkede i sin kommentar, skal du bruge en xml-fil i
app/etc/modules
at bede Magento om at indlæse dit modul, hvis du ikke allerede har oprettet et. -
Sørg for, at dine ressourcer er deklareret på det rigtige sted i filen config.xml. De skal være inde i
<global>
tag (dette ser ud til at være korrekt i dit tilfælde). -
Sørg for, at dine opsætningsfiler er på den rigtige placering. De skal være i en sql/-mappe inde i dit modul. Jeg tror, det er dit problem, setup-filen i dette eksempel skal være
app/code/local/Foo/BAR/sql/BAR_setup/mysql4-install-0.1.0.php
-
Efter at have tjekket alt ovenstående, hvis du har en IDE sat op til fejlretning (og hvis du laver noget seriøst Magento-arbejde, så gør dig selv en tjeneste og få en op), indstil et breakpoint i opsætningsfilen og sørg for, at det bliver hit.
-
Tjek
core_resource
tabel i databasen for enBAR_setup
indgang. Hvis det er der, har Magento kørt opsætningsscriptet én gang og vil ikke køre det igen. Hvis du har brug for at køre dit opsætningsscript igen, skal du slette denne post. Ligeledes kan du ændre versionsnumrene, hvis du nogensinde har brug for at køre opgraderingsscripts igen (men sørg for at forstå konsekvenserne af at køre opsætnings-/opgraderingsscripts en anden gang, hvis du gør det).
Hvis alt andet fejler, tjek Alan Storms guide til fejlfinding af Magento-opsætningsscripts .