django-mobile-withstatic

Скріншот програми:
django-mobile-withstatic
Дані програми:
Версія: 0.2.4
Дата завантаження: 20 Feb 15
Розробник: Gregor Mullegger
Ліцензія: Безкоштовно
Популярність: 11

Rating: 5.0/5 (Total Votes: 1)

Django-мобільний додаток Django, який забезпечує простий спосіб виявлення мобільних браузерів і дає вам інструменти у вас під рукою, щоб зробити кілька різних шаблонів, щоб доставити мобільну версію вашого сайту для користувача.
Ідея полягає в тому, щоб тримати ваші погляди точно так само, але прозоро поміняти шаблони, які використовуються для надання відповіді. Це робиться в два етапи:
1. проміжного визначає перевагу клієнта, щоб переглянути ваш сайт. Наприклад якщо він хоче використовувати мобільний смак або повний аромат робочого столу.
2. Шаблон навантажувач має піклуватися про вибір правильних шаблони на основі аромату виявленого в ППО.
Установка
Попередні вимоги: django_mobile залежить від рамках сесії Джанго. Тому, перш ніж ви спробуєте використовувати django_mobile переконайтеся, що база засідання включений і працює.
1. Встановіть django_mobile з вашим улюбленим пітона інструментом, наприклад, з easy_install django_mobile або пункт встановити django_mobile.
2. Додати django_mobile ваших INSTALLED_APPS установки в settings.py.
3. Додати django_mobile.middleware.MobileDetectionMiddleware з настройками MIDDLEWARE_CLASSES.
4. Додайте django_mobile.middleware.SetFlavourMiddleware з настройками MIDDLEWARE_CLASSES. Переконайтеся, що він зазначений після MobileDetectionMiddleware, а також після SessionMiddleware.
5. Додайте django_mobile.loader.Loader в якості першого пункту у списку TEMPLATE_LOADERS в settings.py.
6. Додайте django_mobile.context_processors.flavour з настройками TEMPLATE_CONTEXT_PROCESSORS.
Тепер ви повинні бути в змозі використати Django-Mobile в своїй красі. Читайте нижче про те, як все це працює і які налаштування може бути змінений, щоб змінити поведінку Django-Mobile.
Використання
Концепція Django-Mobile є побудувати навколо ідей різних ароматів для вашого сайту. Наприклад мобільна версія описаний як один з можливих смак, в настільному варіанті, як інший.
Це дає можливість забезпечити безліч можливих конструкцій, а не тільки відмінності між звичайному робочому столі і однієї мобільної версії. Ви можете зробити кілька мобільних аромати, наприклад в один для мобільних сафарі на iPhone і Android, а також по одному для опери та додаткову один для інтернет-планшетів, таких як IPad.
Примітка: За умовчанням Django-Mobile розрізняє тільки повної та мобільного смак.
Після правильної смак якось вибрали по проміжне програмне, це присвоєне атрибуту request.flavour. Ви можете використовувати це в своїх поглядах, щоб забезпечити окремий логіку.
Це аромат потім використовувати прозоро вибрати користувацькі шаблони для цього особливим смаком. Вибраний шаблон буде мати поточну смак приставкою до імені шаблону, ви дійсно хочете, щоб зробити. Це означає, що коли render_to_response ('index.html', ...) викликається з мобільного смак бути активним насправді повертає відповідь винесене з мобільним / index.html шаблону. Однак, якщо це ароматний шаблон недоступна, вона буде витончено Відкат до шаблону за замовчуванням index.html.
У деяких випадках його не бажання спосіб мати абсолютно різні шаблони для кожного аромату. Ви також можете використовувати {{смак}} змінну шаблону тільки рядкові сторони єдиного шаблону. Короткий приклад:


І NBSP; <назва> Мій сайт {%, якщо смак == "мобільного"%} (мобільна версія) {% ENDIF%}

<Тіло>
І NBSP; ...


Це дозволить додати (мобільна версія) з назвою вашого сайту, якщо дивитися з мобільного смак доступний.
Примітка: змінна шаблону смак доступна, тільки якщо ви створили процесор контекстне django_mobile.context_processors.flavour і використовуються RequestContext Django, як, наприклад контексту, щоб зробити шаблон.
Зміна поточного смак
Основний випадок використання Джанго-Mobile, очевидно, служити мобільну версію вашого сайту для користувачів. Вибір правильного смаку, як правило, вже зроблено в проміжне програмне коли ваші власні погляди називаються. У деяких випадках ви хочете змінити використовуваний в даний час аромат на ваш погляд або десь ще. Ви можете зробити це, просто зателефонувавши django_mobile.set_flavour (смак [, постійний = True]). Перший аргумент зрозумілий. Але майте на увазі, що ви тільки можете перейти в ароматі, що ви теж в обстановці Аромати. В іншому випадку set_flavour підніме ValueError. Необов'язкові постійні параметри визначає, чи буде зміна смаку, пам'ятайте для майбутніх запитів і того ж клієнта.
Ваші користувачі можуть встановити бажаний смак їх власного. Вони просто повинні вказати параметр смак GET за запитом на ваш сайт. Це постійно вибирають цей аромат, як їхні уподобання, щоб переглянути цей сайт.
Ви можете використовувати цей параметр GET, щоб користувач міг вибрати з наявних у Вас варіантах:


    І NBSP;
  • Отримати повний досвід
    І NBSP;
  • Перегляд нашу мобільну версію
    І NBSP;
  • Перегляд нашу версію Ipad

Примітки по кешування
Django є судноплавство з деякими зручні методи легко кешувати свої погляди. Одним з них є django.views.decorators.cache.cache_page. Проблема з кешуванням цілу сторінку в поєднанні з Django-Mobile є система кешування, Джанго не знає смаків. Це означає, що якщо перший запит до сторінці подається за допомогою мобільного смак, другий запит також може отримати сторінку винесено з мобільного смак з кешу - навіть якщо другий був запропонований одним з настільної версії браузера.
Django-Mobile є судноплавство з його власної реалізації cache_page, щоб вирішити цю проблему. Будь ласка, використовуйте django_mobile.cache.cache_page замість власного cache_page декоратор Джанго.
Ви також можете використовувати Django, кешування проміжне програмне django.middleware.cache.UpdateCacheMiddleware і FetchFromCacheMiddleware як ви вже робите. Але, щоб вони знали смаків, вам потрібно додати django_mobile.cache.middleware.CacheFlavourMiddleware в якості другого останнього пункту в налаштуваннях MIDDLEWARE_CLASSES, прямо перед FetchFromCacheMiddleware.
Посилання
django_mobile.get_flavour ([Запит] [за замовчуванням])
І NBSP; Отримати поточний активний аромат. Якщо немає смаку не може бути визначений, то повернеться значення за замовчуванням. Це може статися, якщо set_flavour ні викликаний, перш ніж у поточному циклі запит-відповідь. за замовчуванням приймається перший елемент в обстановці Аромати.
django_mobile.set_flavour (смак, [запит] [перманент])
І NBSP; Встановіть аромат, який буде використовуватися для запиту. Це призведе до підвищення ValueError якщо аромат не в умовах Аромати. Ви можете спробувати встановити аромат постійно для запиту шляхом передачі постійних = True. Це може призвести до збою ви перебуваєте поза циклу запит-відповідь. запросити за замовчуванням для активного запиту.
django_mobile.context_processors.flavour
І NBSP; Контекст процесор, який додає поточну смак, аромат від контексту.
django_mobile.context_processors.is_mobile
І NBSP; Цей контекст процесор буде додати is_mobile змінну в контексті, який є істинним, якщо струм аромат дорівнює налаштування DEFAULT_MOBILE_FLAVOUR.
django_mobile.middleware.SetFlavourMiddleware
І NBSP; Піклується про завантаження збереженого аромат від сеансу користувача, якщо встановлений. Також встановлюється поточний запит до змінної локального потоку. Це необхідно, щоб забезпечити get_flavour () функції, не маючи доступу до об'єкта запиту.
django_mobile.middleware.MobileDetectionMiddleware
І NBSP; Виявляє, якщо мобільний браузер намагається отримати доступ до сайту і встановлює аромат DEFAULT_MOBILE_FLAVOUR налаштування значення у разі.
django_mobile.cache.cache_page
І NBSP; Те ж, що cache_page декоратора Django, але ставиться vary_on_flavour до вид прикрашений django.views.decorators.cache.cache_page.
django_mobile.cache.vary_on_flavour
І NBSP; декоратор створений з CacheFlavourMiddleware проміжного програмного забезпечення.
django_mobile.cache.middleware.CacheFlavourMiddleware
І NBSP; Додає X-Смак заголовок request.META в process_request і додає цей заголовок до відповіді ['Вари'] в process_response.
Налаштування
Є деякі моменти, доступні, які дозволяють налаштувати поведінку Django-Mobile. Ось деякі можливості, перераховані:
MobileDetectionMiddleware
Вбудований проміжного виявити, якщо користувач використовує мобільний браузер добре служили у виробництві, але далека від досконалості, а також проведені в дуже спрощеному вигляді. Ви можете безпечно видалити Це проміжне в налаштуваннях і додати свою власну версію замість цього. Просто переконайтеся, що вона називає django_mobile.set_flavour в якийсь момент, щоб встановити правильну аромат для вас.
Налаштування
Ось список параметрів, які використовуються Django-Mobile і може бути змінена у вашому власному settings.py:
Аромати
Список доступних смаків для вашого сайту.
За замовчуванням: ("повний", "мобільний")
DEFAULT_MOBILE_FLAVOUR
Аромат, який вибирається, якщо вбудований MobileDetectionMiddleware виявляє мобільний браузер.
За замовчуванням: мобільний
FLAVOURS_TEMPLATE_PREFIX
Цей рядок буде починатися з іменами шаблонів при пошуку ароматизованих шаблонів. Це корисно, якщо у вас є багато ароматів і хочете зберегти їх у загальному підкаталозі. Приклад:
від django.template.loader імпорту render_to_string
від django_mobile імпорту set_flavour
set_flavour ("Мобільний")
render_to_string ('index.html') # надасть "мобільний / index.html"
# Тепер додати до цього settings.py
FLAVOURS_TEMPLATE_PREFIX = 'аромати /'
# І спробуйте ще раз
set_flavour ("Мобільний")
render_to_string ('index.html') # надасть "аромати / телефони / index.html"
За замовчуванням: '' (порожній рядок)
FLAVOURS_TEMPLATE_LOADERS
Шаблон навантажувач Django-Mobile можна завантажити шаблони з префіксом поточного аромату. Вкажіть з цією установкою, яка навантажувачі використовуються для завантаження ароматизовані шаблонів.
Значення за замовчуванням: так само, як TEMPLATE_LOADERS місці, але без "django_mobile.loader.Loader».
FLAVOURS_GET_PARAMETER
Користувачі можуть змінити смак вони хочуть, щоб дивитися на з параметром HTTP GET. Це визначає ім'я цього параметра. Встановіть його в None, щоб відключити.
За замовчуванням: 'смак'
FLAVOURS_SESSION_KEY
Уподобань користувача встановлюється за допомогою параметра GET зберігається у сесії користувача. Цей параметр визначає, який ключ сеансу використовується для зберігання цієї інформації.
За замовчуванням: 'смак'

Що нового У цьому випуску :.

  • Додана платформа визнаючи

Що нового у версії 0.2.3:

  • FIX: встановити смак у всіх випадках, а не тільки Якщо мобільний браузер виявлено. Завдяки Джону П. Kiffmeyer для звіту.

Вимоги

  • Python
  • Django

Інші програми розробника Gregor Mullegger

django-mobile
django-mobile

14 Apr 15

django-mobile-withstatic

Коментар не знайдено
додати коментар
Включіть картинки!