django-extensible-profiles

Скріншот програми:
django-extensible-profiles
Дані програми:
Версія: 1.3.6
Дата завантаження: 20 Feb 15
Розробник: Incuna Ltd
Ліцензія: Безкоштовно
Популярність: 3

Rating: 2.0/5 (Total Votes: 1)

Django расширяемую-профілів додаток Django, яка забезпечує расширяемую систему профілів користувачів для Django, призначений для забезпечення простого профіль моделі, яка розширюється.
Концепція (і деякий код) запозичено з FeinCMS (https://github.com/matthiask/feincms) моделлю сторінок.
Щоб використовувати модуль профілі додати профілі на ваш INSTALLED_APPS.
Перш ніж приступити до manage.py SyncDB, ви повинні додати деякі розширення профайл. Модуль профілі нічого не додає до моделі користувачів за замовчуванням.
Модулі розширення профілю модулі
Розширення спосіб додати часто використовуваних функцій профілів моделі. Розширення стандартних модулів Python з методом регістр (), який буде покликаний реєстрації розширення. Метод регістр () отримує сам клас профілю і класу ProfileAdmin модель адміністрування в якості аргументів.
Розширення можуть бути активовані шляхом додавання наступних в файл models.py, які будуть оброблені в будь-якому випадку:
 від profiles.models імпорту профілів
І NBSP; & NBSP; & NBSP; Profile.register_extensions ('назва', 'картинка', 'адреса', 'profiles.modules.options.extensions.options »)
Якщо розширення вимагає свого власного моделі (наприклад, розширення варіантів), то додаток, що містить моделі також мають бути додані до вашого INSTALLED_APPS.
Додавання розширень
Щоб додати розширення створити модуль пітона, який визначає функцію регістра, який приймає клас профілю і клас ProfileAdmin в якості аргументів і модифікує їх у міру необхідності.
Ось розширення адреси (профілі / розширення / address.py):
від django.db імпортних моделей
І NBSP; & NBSP; & NBSP; від django.utils.translation ugettext_lazy Імпортувати як _
І NBSP; & NBSP; & NBSP; Def зареєструйтеся (CLS, admin_cls):
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; cls.add_to_class ('address1', models.CharField (max_length = 255, verbose_name = _ ("адреса"), NULL = True, порожній = True))
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; cls.add_to_class ('address2', models.CharField (max_length = 255, verbose_name = _ ("адреса 2 '), нульова = True, порожній = True))
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; cls.add_to_class ('місто', models.CharField (max_length = 255, verbose_name = _ ("місто / '), нульова = True, порожній = True))
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; cls.add_to_class ('область', models.CharField (max_length = 255, verbose_name = _ ("графство / держава / провінція»), NULL = True, порожній = True))
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; cls.add_to_class ('поштовий індекс', models.CharField (max_length = 15, verbose_name = _ ("Поштовий індекс"), NULL = True))
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; cls.add_to_class ('країна', models.ForeignKey ('countries.Country', NULL = True, порожній = True))
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; cls.add_to_class ('телефон', models.CharField (max_length = 32, verbose_name = _ ("мобільний номер"), NULL = True, порожній = True))
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; якщо admin_cls:
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; admin_cls.search_fields + = ['address1', 'address2', 'місто', 'область', 'поштовий індекс']
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; admin_cls.list_display_filter + = ['країна',]
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; якщо admin_cls.fieldsets:
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; admin_cls.fieldsets.append ((_ ('Адреса') {
                        "Поля": ["address1 ',' address2 ',' місто ',' область ',' поштовий індекс ',' країна ',' телефон '],
                        "Класи": ("колапс",),
                    }))
. Додати 'incuna.countries ", щоб INSTALLED_APPS для використання розширення адреси

Вимоги

  • Python
  • Django

Інші програми розробника Incuna Ltd

django-extensible-profiles

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