x

Fő fejezetek

  1. LimeSurvey Cloud vs LimeSurvey CE
  2. Rövid útmutató – LimeSurvey 3.0+
  3. Telepítés - LimeSurvey CE
  4. Hogyan készítsünk egy jó felmérést (útmutató)
  5. Elkezdeni
  6. A LimeSurvey adminisztrálása
  7. Felmérések - bevezető
  8. Felmérés beállításai
  9. Felmérés menü
  10. Felmérés szerkezete
  11. Kérdések – bevezetés
  12. Kérdéscsoportok - bevezetés
  13. Felmérések - menedzsment
  14. A felmérés eszköztárának beállításai
  15. Többnyelvű felmérés
  16. ExpressionScript Engine – Gyors üzembe helyezési útmutató
  17. Nem kategorizált és speciális funkciók
  18. Általános GYIK
  19. Hibaelhárítás
  20. Megoldások
  21. Engedély
  22. Verzióváltoztatási napló
  23. Bővítmények – haladó
 Actions

LimeSurvey 7 mezőnév-átalakítás

From LimeSurvey Manual

Előfordulhat, hogy ez az oldal gépi fordítással készült, és hibákat tartalmaz. Angol eredeti megjelenítése · A fordítás javítása
This page is a translated version of the page LimeSurvey 7 Fieldname Refactor and the translation is 100% complete.

A mezőnevek és a kitöltések táblázatainak átalakítása - LimeSurvey 7

A LimeSurvey 7 jelentősen megtisztítja a kitöltések táblázatainak és a mezőneveknek a létrehozási módját. A frissítés korszerűsíti a régóta használt belső elnevezési szabályokat, és kiszámíthatóbb, stabilabb alapot teremt a bővítmények, az integrációk és a további fejlesztések számára.

Ez az oldal a kitöltések táblázatainak és a mezőneveknek az átalakításával foglalkozik.

Mivel ez szerkezeti változás, a réginevekre épülő egyedi megoldásokat esetleg frissíteni kell. Az oldal bemutatja, mi változik, hogyan lehet biztonságosan tesztelni, és hogyan készülhet fel a frissítésre.

1. Mi változik

1.1 Új táblanevek

A LimeSurvey mostantól egységes elnevezési rendszert használ a kitöltésekhez kapcsolódó táblákhoz.

Régi táblanév Új táblanév
old_survey_<sid>_<timestamp> old_responses_<sid>_<timestamp>
old_survey_<sid>_timings_<timestamp> old_timings_<sid>_<timestamp>
survey_<sid> responses_<sid>
survey_<sid>_timings timings_<sid>

Az ezekre a táblákra hivatkozó SQL-lekérdezéseket, integrációkat vagy bővítményeket esetleg módosítani kell.

1.2 Új mezőnév-szerkezet

A mezőnevek mostantól kiszámítható és egységes formátumot követnek. Példák:

  • Q<questionId> - gyökérkérdés
  • Q<questionId>_S<subquestionId> - alkérdések
  • Q<questionId>_C<suffix> - megjegyzés vagy egyéb mezők
  • rangsorolási mezők: Q<questionId>_S<subquestionId> - a rangsorolandó elemek mostantól alkérdések (lásd 1.3)
  • időtöltés mezők: kérdés- vagy csoportszintűek, a környezettől függően

Ez leváltja a régi, sidXgidXqid alapú elnevezést.

1.3 Rangsorolós kérdések

A rangsorolós kérdések mostantól a többi alkérdés-alapú kérdéstípushoz hasonlóan működnek:

  • Az elemek alkérdések. A rangsorolható elemek alkérdésként (R típus) tárolódnak, nem pedig válaszlehetőségként.
  • A mezőnevek a szokásos alkérdésformátumot használják: Q<questionId>_S<subquestionId> (rangsorolt elemenként egy).
  • A kitöltések egyetlen JSON oszlopban tárolódnak: Q<questionId>, az elemkódok rendezett tömbjeként, ahol a pozíció = a rangsorban elfoglalt hely. Példa: ["3", "1", "2"]

2. Miért fontos ez

Ez a tisztítás olyan elnevezési mintákat érint, amelyeket évekig formálisan meghatározva használtak, és egységes, stabil szerkezetbe rendezi őket, amelyre a jövőben építeni lehet.

Az ilyen szerkezeti változások ritkán egyszerűek. A rendszernek olyan részeit érintik, amelyekre sok bővítmény és integráció támaszkodik, ezért bonyolultságuk miatt gyakran halogatják őket. Az egységesség és a kiszámíthatóság azonban fontos a hosszú távú stabilitáshoz.

Ha ezt most megoldjuk, a LimeSurvey letisztultabb és könnyebben bővíthető lesz, még ha a változás a felszínen többnyire láthatatlan is.

3. Az új mezőnevek előnézete

Ha meg szeretné nézni, hogy egy meglévő mezőnév hogyan képződik le az új LS7 szerkezetre, kövesse az alábbi lépéseket:

  1. Készítsen biztonsági mentést az adatbázisról, mert a változások nem visszafordíthatók, és ha valami félresikerül, hasznos lesz a módosítás előtti adatbázis a helyreállításhoz
  2. Váltson a develop-major ágra:
    git checkout develop-major
    vagy klónozza/töltse le a projektet közvetlenül erről az ágról: https://github.com/LimeSurvey/LimeSurvey/tree/develop-major
  3. Töltsön be egy adminisztrációs oldalt a változtatási szkript elindításához
  4. Jelezze az esetleges hibákat, amelyeket a változtatási szkript futtatása közben tapasztal
  5. Tanulmányozza az új táblaneveket és mezőneveket
  6. Tesztelje a bővítményeit/sablonjait, és javítsa a táblanevekkel és/vagy mezőnevekkel kapcsolatos hibákat

A régi mezőnevek újakká alakítására a következő függvény szolgál:

getFieldName($tableName, $fieldName, $questions, $sid, $gid, $cd)

Paraméterek

  • $tableName - az eredeti táblanév
  • $fieldName - az eredeti mezőnév
  • $questions - a gyökérkérdés és annak alkérdései
  • $sid - kérdőív-azonosító
  • $gid - csoportazonosító
  • $cd - él-e a Feltételtervező logikája

Eredmény

A függvény az adott kitöltésmező új LS7 mezőnevét adja vissza.

4. A változások biztonságos tesztelése

Határozottan ajánlott az LS7-et külön erre a célra kialakított környezetben tesztelni, mielőtt az éles rendszereket frissíti.

4.1 Az LS7 telepítése külön környezetbe

Töltse le a legfrissebb LS7-et innen:

https://community.limesurvey.org

Telepítse a jelenlegi környezetétől függetlenül.

4.2 Meglévő elemek importálása

Tesztelje a következőkkel:

  • kérdőívek
  • Kérdőív-témák
  • Üzemeltetői témák
  • Kérdéstémák
  • bővítmények
  • egyéni JavaScript
  • az Ön által készített egyéni integrációk

Ellenőrizze, hogy minden a várt módon működik-e az új tábla- és mezőnevekkel. Frissítse a régi elnevezésekre támaszkodó kódot.

4.3 Hogyan indítható el a migráció?

Ha ki szeretné próbálni a migrációs logikát a teszttelepítésén:

  1. Készítsen biztonsági mentést az adatbázisról.
  2. Telepítse az LS7 verziót.
  3. Töltsön be egy tetszőleges adminisztrációs oldalt a migrációs szkript futtatásához.
  4. Tekintse át a tábla- és mezőnév-változásokat.
  5. Tesztelje az alkalmazást.
  6. Szükség esetén frissítse az egyéni kódot.

4.4 Hibák jelentése

Köszönjük, hogy már most tesztel! Ha a központi rendszerben bármi szokatlant észlel, kérjük, jelezze, hogy minél előbb javíthassuk.

https://bugs.limesurvey.org

5. Mit kell esetleg frissíteni

A következők módosítást igényelhetnek:

  • a régi mezőneveket vagy táblaneveket használó bővítmények
  • az Ön által készített egyéni integrációk
  • mezőnév alapú kijelölőket használó JavaScript
  • a kitöltésekhez kapcsolódó azonosítókat használó egyéni témák
  • a korábbi elnevezési sémától függő integrációk
  • régi exportok importálása, például kérdőívek, témák, Kérdéstémák stb.

Ez várható, és a frissítési folyamat része.

6. Összegzés

  • Az LS7 teljes körűen rendezi a kitöltések táblázata és a mezőnevek elnevezését
  • Ez az LS7 elsődleges szerkezeti háttérváltozása
  • Határozottan javasolt külön környezetben tesztelni
  • A getFieldName() segít az új elnevezés előnézetében
  • Szükség esetén frissítse az egyéni kódot
  • Jelezze a hibákat minél korábban, hogy segítsen stabilizálni a végleges kiadást