django-private-views

Скріншот програми:
django-private-views
Дані програми:
Версія: 1.0
Дата завантаження: 15 Apr 15
Розробник: Julien Phalip
Ліцензія: Безкоштовно
Популярність: 12

Rating: 5.0/5 (Total Votes: 1)

Django приватно-поглядів додаток Django, що забезпечує загальну картину в веб-сайтів, коли кілька сторінок захищені і вимагають логін, щоб отримати доступ і NBSP; .login_required декоратор часто прігождается для таких ситуацій. Але, інший малюнок, який досить часто, коли більша частина сайту захищена, тільки з кількома винятками сторінок, які залишаються з громадськістю (наприклад, FrontPage, сторінка з пропискою, і т.д.). У цьому випадку, це може бути досить стомлюючим для прикраси всі видом сlogin_required, і вона може бути легко забути для прикраси деякі з них.
Django приватно-переглядів захищає кожен вид, а потім дозволяє явно вказати, які погляди мають бути публічними. Це робить речі простіше і менш схильний до помилок.
Установка
Встановіть Django-приватного думки PyPI.
пункт встановити Django-приватного думки
Додати проміжне privateviews з настройками:
MIDDLEWARE_CLASSES = (
І NBSP; ...
І NBSP; privateviews.middleware.LoginRequiredMiddleware
)
Оголошення громадської думки
На даний момент, всі уявлення, крім settings.LOGIN_URL зажадає від вас увійти. Отже, тепер ми повинні вказати кілька подань, які повинні бути відкритими. Є три способи у вашому розпорядженні: за допомогою спеціального декоратора, в яких перераховані громадської думки, або перерахування шляху суспільного URL.
Використання Decorator
Іспользованіеlogin_not_required ви можете явно змусить вид мають бути відкритими. Наприклад:
від privateviews.decorators імпорт login_not_required
login_not_required
Def Frontpage (запит):
І NBSP; ...
У цьому випадку, вид Frontpage буде правильно відображатися, навіть якщо ви і Rsquo; не увійшли до.
Лістинг громадської думки
Якщо ви не & Rsquo; т мати прямий доступ на модифікацію вид & Rsquo, S код (наприклад, вона і Rsquo, S в сторонньому додатку), ви все одно можете змусити цю точку зору, щоб бути відкритими, додавши його в налаштування PUBLIC_VIEWS у файлі налаштувань. Ось і Rsquo, S приклад, якщо ви і Rsquo; повторне використання системи django.contrib.auth і додаток Django-реєстрації:
PUBLIC_VIEWS = [
І NBSP; 'django.contrib.auth.views.login',
І NBSP; 'django.contrib.auth.views.password_reset_done',
І NBSP; 'django.contrib.auth.views.password_reset',
І NBSP; 'django.contrib.auth.views.password_reset_confirm',
І NBSP; 'django.contrib.auth.views.password_reset_complete',
І NBSP; 'registration.views.register',
І NBSP; 'registration.views.activate',
]
У лістингу URL громадські шляху
Третій і останній спосіб є безпосередньо вказати URL шляху (як у регулярних виразах) для сторінок, які ви хочете бути відкритими. Це може бути корисно, наприклад, якщо сторінка відображається за допомогою загального вигляду. Це також корисно, якщо ви служите своїм медіа-файлів статично за допомогою Django (рекомендується тільки в режимі розробки). Для цього вам потрібно додати PUBLIC_PATHS налаштування у файлі налаштувань. Ось і Rsquo, S приклад:
PUBLIC_PATHS = [
І NBSP; '^% S'% MEDIA_URL,
І NBSP; '^ / рахунки / реєстрація / повний / $', # Використовує "direct_to_template" основний вид
]
Створення 404 переглядів приватне
На даний момент, не увійшли до користувачі будуть мати можливість побачити 404 відповідей, якщо вони відвідують URL, що не відображення в поданні. Це не ідеально, оскільки воно не повинно бути можливим, щоб визначити структуру сайту без заходу в.
Для того, щоб 404 Переглядів Приватне для всіх, крім зареєстрованих користувачів, додайте наступне в якості останньому рядку у вашій верхньої URLconf рівня:
urlpatterns = візерунки ('',
І NBSP; ...
І NBSP; гіперпосилання (г '^', 'privateviews.views.private_404')
)

Вимоги

  • Python
  • Django

Інші програми розробника Julien Phalip

glamkit-adminboost
glamkit-adminboost

11 May 15

django-treemenus
django-treemenus

12 May 15

django-private-views

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