A Django-gofri egy olyan funkció, flipper a Django. & Nbsp; Megadhatjuk a feltételeket, amelyek a zászló legyen aktív, és használja a számos módon.
Telepítés:
Ahhoz, hogy használhassa Waffle, akkor csak meg kell hozzá, hogy a INSTALLED_APPS és MIDDLEWARE_CLASSES:
INSTALLED_APPS = (
& Nbsp; # ...
& Nbsp; "gofri",
& Nbsp; # ...
)
MIDDLEWARE_CLASSES = (
& Nbsp; # ...
& Nbsp; "waffle.middleware.WaffleMiddleware",
& Nbsp; # ...
)
Mivel Waffle lesz a beállítás sütiket választ tárgyakat, érdemes azt küszöb alatt middleware, hogy csíp cookie-kat, mielőtt elküldi őket.
létrehozása Flag
Létrehozása és kezelése zászlók keresztül történik a Django admin felületen. Minden funkció zászló képviseli a Flag objektumot, amely több tulajdonság.
Név:
& Nbsp; A neve a zászló. Fogják használni, hogy azonosítsa a zászló mindenütt.
Mindenki:
& Nbsp; A flip ez a zászló (Igen) vagy ki (nem) mindenki számára, felülírva az összes többi beállítást. Hagyjuk Ismeretlen használni rendesen.
Százalék:
& Nbsp; A felhasználók aránya, akik számára a zászlót aktív lesz. Ez megmarad cookie-k, olyan okos felhasználók kap körül. Mégis, ez a leggyakoribb eset.
Felettes:
& Nbsp; Ez zászlót mindig aktív a felettes?
Munkatársak:
& Nbsp; Ez zászlót mindig aktív az alkalmazottak számára?
Hitelesített:
& Nbsp; Ez zászlót mindig aktív a hitelesített felhasználók számára?
Csoportok:
& Nbsp; A fenti csoportok azonosítói, amelyre ez a zászló mindig aktív lesz.
Felhasználók:
& Nbsp; A fenti felhasználói azonosítók, amelyekre ez a zászló mindig aktív lesz.
Így több beállításokat. Például, meg tudná nyújtani képes arra, hogy 12% -a felhasználók és az összes felettes. Amikor ötvözi a beállításokat, a zászló lesz aktív a felhasználót, ha bármelyik beállítást megfelel nekik.
Egy zászló
Zászlók lehet használni a sablonokat, a nézetek, vagy a köré egész nézeteit.
Ha megpróbálja használni a zászlót, amely nincs meghatározva, akkor mindig inaktív.
Egy zászlót sablonok
Jingo / Jinja2
Külön jelölni egy Jinja2 sablon segítségével Jingo, teheted:
{% If gofri ("flag_name)%}
& Nbsp; Content ha flag aktív
{% Endif%}
Azt is hozzá egy {% else%} részben persze:
{% If gofri ("flag_name)%}
& Nbsp; Flag aktív!
{% Else%}
& Nbsp; Flag inaktív!
{% Endif%}
Django sablonok
Külön jelölni a vanília Django sablonok, akkor a gofri tag:
{% -os Terhelés waffle_tags%}
{% Gofri flag_name%}
& Nbsp; Content ha flag aktív
{% Endwaffle%}
A {% gofri%} címke is támogatja a {% else%} szakaszban:
{% Gofri flag_name%}
& Nbsp; Flag aktív!
{% Else%}
& Nbsp; Flag inaktív!
{% Endwaffle%}
Egy zászlót Views
Hogy egy zászlót a céllal, akkor csak meg kell waffle.is_active:
import gofri
def my_view (kérésre):
& Nbsp; Ha waffle.is_active (kérésre, "flag_name"):
& Nbsp; # Behavior, ha zászlót aktív.
& Nbsp; mást:
& Nbsp; # Behavior, ha zászlót inaktív.
Wraping Egész megtekintése egy zászló
Azt is csomagolja az egész nézetet a zászló:
a waffle.decorators import gofri
waffle ('flag_name')
def my_view (kérésre):
& Nbsp; # megtekintése csak akkor elérhető, ha zászlót aktív.
Ha a jelző nem aktív a kérelmet, a nézet lesz a 404.
Akkor fordított erre azáltal, hogy egy felkiáltójel elején a zászló nevét, például:
waffle ('! flag_name)
def my_view (kérésre):
& Nbsp; # nézet csak akkor elérhető, ha zászlót inaktív.
követelmények :
- Python
Hozzászólás nem található