django-mobile-withstatic

Software kuvakaappaus:
django-mobile-withstatic
Ohjelmiston tiedot:
Versio: 0.2.4
Lähetyksen päivämäärä: 20 Feb 15
Kehittäjä: Gregor Mullegger
Lupa: Vapaa
Suosio: 11

Rating: 5.0/5 (Total Votes: 1)

Django-mobiili on Django sovellus, joka tarjoaa helpon tavan tunnistaa mobiiliselaimille ja antaa sinulle työkaluja kätesi tehdä joitakin erilaisia ​​malleja toimittaa mobiiliversion sivuston käyttäjälle.
Ajatuksena on pitää näkymät täsmälleen sama, vaan avoimesti vaihtaa malleja käytetään saamaan vastausta. Tämä tapahtuu kahdessa vaiheessa:
1. middleware määrittää asiakkaan toivomukset tarkastella sivuston. Esim. jos hän haluaa käyttää mobiili maku tai koko työpöydän maku.
2. mallin kuormaaja vie sitten huolta valitsemalla oikea malleja perustuu maku havaittu middleware.
Asennus
Pre-Vaatimukset: django_mobile riippuu Django istunnon yhteydessä. Joten ennen kuin yrität käyttää django_mobile varmista, että istuntojen yhteydessä on käytössä ja toimii.
1. Asenna django_mobile suosikki python työkalu, esim kanssa easy_install django_mobile tai PIP asentaa django_mobile.
2. Lisää django_mobile sinun INSTALLED_APPS -asetusta settings.py.
3. Lisää django_mobile.middleware.MobileDetectionMiddleware sinun MIDDLEWARE_CLASSES asetus.
4. Lisää django_mobile.middleware.SetFlavourMiddleware sinun MIDDLEWARE_CLASSES asetus. Varmista, että se on lueteltu jälkeen MobileDetectionMiddleware ja myös sen jälkeen SessionMiddleware.
5. Lisää django_mobile.loader.Loader ensimmäisenä tuote sinun TEMPLATE_LOADERS listoihin settings.py.
6. Lisää django_mobile.context_processors.flavour sinun TEMPLATE_CONTEXT_PROCESSORS asetus.
Nyt sinun pitäisi pystyä käyttämään Django-Mobile komeudessaan. Lue alta, miten asiat toimivat ja mitkä asetukset voidaan viritetty muuttaa Django-mobiili käyttäytymistä.
Käyttö
Käsite Django-mobiili on rakentaa noin ideoita eri makuja sivuston. Esimerkiksi mobiiliversio on kuvattu yksi mahdollinen maku, työpöydän versio kuin toinen.
Tämä tekee mahdolliseksi tarjota monia mahdollisia malleja eikä vain erotella koko työpöydän kokemus ja yksi mobiiliversio. Voit tehdä useita mobiili makuja saatavilla esimerkiksi yksi mobiili safari iPhonessa ja Android sekä yksi Opera ja ylimääräinen yksi internet tabletteja kuin iPad.
Huomaa: Oletuksena Django-mobiili erotetaan ainoastaan ​​täysi ja mobiili maku.
Kun oikea maku on jotenkin valitsema middlewares, se osoitetaan request.flavour määrite. Voit käyttää tätä teidän näkymät erilliset logiikkaa.
Tämä maku on sitten käyttää avoimesti valita mukautettuja malleja tähän erityinen maku. Valitun mallin on nykyinen maku etuliitteellä malliin nimen te todella haluavat tehdä. Tämä tarkoittaa sitä, kun render_to_response ("index.html", ...) kutsutaan liikkuvalla maku on aktiivinen todella palauttaa vastauksen sulatettu kanssa mobiili / index.html malliin. Kuitenkin jos tämä maustettu mallin ei ole saatavilla, se sulavasti Varmistuksena oletuksena index.html malliin.
Joissain tapauksissa se ei haluttu tapa saada täysin erillinen malleja jokaista makua. Voit myös käyttää {{maku}} mallin muuttujan muuttaa vain pieni osa yhden mallin. Lyhyt esimerkki:


& Nbsp; Oma sivusto {% jos maku == "mobiili"%} (mobiiliversio) {% endif%}


& Nbsp; ...


Tämä lisää (mobiiliversio) otsikon sivustosi jos katsella mobiili maku käytössä.
Huomaa: maku mallin muuttuja on käytettävissä vain, jos olet asettanut django_mobile.context_processors.flavour yhteydessä prosessori ja käyttää Django RequestContext kuin yhteydessä esimerkiksi tehdä mallin.
Muuttaminen nykyinen maku
Peruskäyttö tapauksessa Django-mobiili on tietenkin palvella mobiiliversion sivuston käyttäjille. Oikean maku on yleensä jo tehty middlewares kun oma näkemyksensä kutsutaan. Joissakin tapauksissa haluat muuttaa nykyisin käytössä maku teidän mielestänne tai muualla. Voit tehdä tämän yksinkertaisesti soittamalla django_mobile.set_flavour (maku [, pysyvä = True]). Ensimmäinen väite on itse selittää. Mutta pitää muistaa, että et vain voi kulkea maku, joka sinulle on myös teidän FLAVOURS ympäristössä. Muuten set_flavour nostaa ValueError. Lisävarusteena pysyvä parametrit määritellään jos muutos maku on muistaa tulevia pyyntöjä saman asiakkaan.
Käyttäjät voivat asettaa haluamansa maun niitä itse. Ne täytyy vain määritellä maku GET parametri pyynnöstä sivustoon. Tämä pysyvästi valita tämä maku mieltymyksensä tarkastella sivuston.
Voit käyttää tätä GET parametri antaa käyttäjän valita käytettävissä olevan makuja:


Huomautuksia välimuistia
Django on merenkulun joitakin mukavuutta menetelmiä helposti välimuistiin näkemyksiänne. Yksi niistä on django.views.decorators.cache.cache_page. Ongelmana välimuistin koko sivu yhdessä Django-mobiili on, että Django välimuistia järjestelmä ei ole tietoinen makuja. Tämä tarkoittaa sitä, että jos ensimmäinen pyyntö sivun tarjoillaan mobiili maku, toinen pyyntö voisi myös saada sivun sulatettu kanssa mobiili maku välimuistista - vaikka toinen pyysi tietokoneen selaimella.
Django-mobiili on merenkulku, jossa on oma täytäntöönpanon cache_page tämän ongelman ratkaisemiseksi. Käytä django_mobile.cache.cache_page sijaan Django oman cache_page sisustajalle.
Voit myös käyttää Django välimuistin middlewares django.middleware.cache.UpdateCacheMiddleware ja FetchFromCacheMiddleware kuin sinä jo tehdä. Mutta kertoa heille makuja, sinun täytyy lisätä django_mobile.cache.middleware.CacheFlavourMiddleware toiseksi viimeinen erä MIDDLEWARE_CLASSES asetukset, juuri ennen FetchFromCacheMiddleware.
Reference
django_mobile.get_flavour ([pyynnöstä] [oletus])
& Nbsp; Saat aktiivisen maku. Jos mitään makua voidaan määrittää se palaa oletuksena. Tämä voi tapahtua, jos set_flavour ei kutsuttu ennen nykyisen pyyntö-vastaus-sykli. Oletuksena oletuksena ensimmäinen kohde FLAVOURS ympäristössä.
django_mobile.set_flavour (maku, [pyynnöstä] [pysyvä])
& Nbsp; Aseta maku käytettävä pyynnöstä. Tämä nostaa ValueError jos maku ei ole FLAVOURS ympäristössä. Voit yrittää asettaa maku pysyvästi pyynnöstä viemällä pysyvä = True. Tämä voi epäonnistua, jos olet poissa pyyntö-vastaus-sykli. pyytää oletuksena aktiivisena pyynnöstä.
django_mobile.context_processors.flavour
& Nbsp; Context prosessori, joka lisää nykyisen maku maku yhteydessä.
django_mobile.context_processors.is_mobile
& Nbsp; Tämä yhteydessä prosessori lisää is_mobile muuttujan yhteydessä, joka on tosi, jos nykyinen maku on yhtä DEFAULT_MOBILE_FLAVOUR asetus.
django_mobile.middleware.SetFlavourMiddleware
& Nbsp; Huolehtii Lataus tallennettu maku käyttäjän istunnon, jos asetettu. Myös asettaa nykyisen pyynnön kierre-paikallinen muuttuja. Tämä on tarpeen tarjota get_flavour () toiminnallisuus ilman pääsy pyynnön kohde.
django_mobile.middleware.MobileDetectionMiddleware
& Nbsp; Tunnistaa jos Selaimella yrittää käyttää sivuston ja asettaa maku DEFAULT_MOBILE_FLAVOUR asetukset arvon tapauksessa.
django_mobile.cache.cache_page
& Nbsp; Sama kuin Django cache_page sisustaja mutta pätee vary_on_flavour ennen näkemys on koristeltu django.views.decorators.cache.cache_page.
django_mobile.cache.vary_on_flavour
& Nbsp; sisustusarkkitehti luotu CacheFlavourMiddleware middleware.
django_mobile.cache.middleware.CacheFlavourMiddleware
& Nbsp; Downloads X-ilmiö otsikkoa request.META vuonna process_request ja lisää tämän otsikon vastaus ['Vary "] in process_response.
Räätälöinti
On joitakin kohtia käytettävissä, joiden avulla voit muokata käyttäytymistä Django-mobiili. Tässä muutamia mahdollisuuksia lueteltu:
MobileDetectionMiddleware
Sisäänrakennettu middleware havaita, jos käyttäjä käyttää mobiili selain palvellut hyvin tuotannossa vaan on kaukana täydellisestä ja myös toteutettu hyvin yksinkertaistetusti. Voit turvallisesti poistaa tämän middleware asetukset ja lisätä omia version sijaan. Varmista vain, että se kutsuu django_mobile.set_flavour jossain vaiheessa määrittää oikea maku sinulle.
Asetukset
Tässä on luettelo asetuksista, joita käytetään Django-mobiili ja voi muuttaa oman settings.py:
Makuja
Luettelo käytettävissä makuja sivuston.
Oletus: ("täydellinen", "mobiili")
DEFAULT_MOBILE_FLAVOUR
Maku, joka on valittu, jos sisäänrakennettu MobileDetectionMiddleware havaitsee mobiiliselaimella.
Oletus: mobiili
FLAVOURS_TEMPLATE_PREFIX
Tämä merkkijono näytetään ennen malliin nimiä etsittäessä maustettu malleja. Tämä on hyödyllistä, jos sinulla on paljon makuja ja haluat tallentaa ne yhteiseen alihakemistoon. Esimerkki:
alkaen django.template.loader tuonti render_to_string
alkaen django_mobile tuonti set_flavour
set_flavour (kännykkä)
render_to_string ("index.html") # kostan "mobiili / index.html"
# Nyt lisätä tämän settings.py
FLAVOURS_TEMPLATE_PREFIX = 'makuja /'
# Ja yritä uudelleen
set_flavour (kännykkä)
render_to_string ("index.html") # kostan "makuja / mobiili / index.html"
Oletus: '' (tyhjä merkkijono)
FLAVOURS_TEMPLATE_LOADERS
Django-Mobilen mallin kuormaaja voi ladata malleja etuliitteellä nykyisen maku. Määritä tällä asetuksella, joka kuormaajat käytetään ladata maustettu malleja.
Oletus: sama kuin TEMPLATE_LOADERS asettamalla mutta ilman "django_mobile.loader.Loader".
FLAVOURS_GET_PARAMETER
Käyttäjät voivat muuttaa makua he haluavat katsoa kanssa HTTP GET parametri. Tämä määrittää nimi tämän parametrin. Aseta se None poistaa.
Oletus: "maku"
FLAVOURS_SESSION_KEY
Käyttäjä toivomukset asetettu GET parametri tallennetaan käyttäjän istunnon. Tämä asetus määrittää, mikä tilapäinen avain on tapana pitää tätä tietoa.
Oletus: "maku"

Mitä uutta tässä julkaisussa:

  • Lisätty alustan tunnustaa.

Mitä uutta versiossa 0.2.3:

  • Korjaus: asettaa maku kaikissa tapauksissa, paitsi jos Selaimella havaitaan. Kiitos John P. Kiffmeyer mietinnöstä.

Vaatimukset :

  • Python
  • Django

Muu ohjelmistojen kehittäjä Gregor Mullegger

Kommentit django-mobile-withstatic

Kommentteja ei löytynyt
Lisää kommentti
Ota kuvia!