A reusable Django app for a phone directory system.
Project description
django_phonedir
A reusable Django app for a phone directory system.
Tested and known to work with Django 5.2 and newer. Tested with Python 3.12 and newer.
Requirements
- Python >= 3.12
- daisyUI (only for provided templates)
- Django >= 5.2
- django-phonenumber-field >= 8.4.0
- phonenumberslite >= 9.0.26
Installation
Install via pip.
pip install django-phonedir
Add to Django settings INSTALLED_APPS like so...
INSTALLED_APPS = [
...
"django-phonedir",
...
]
URL Paths
By default, there are certain URL paths that are provided to help get you
started. The built-in URL paths and templates can be utilized by adding
django_phonedir.urls to your main list of urlpatterns in a urls.py file like
so...
from django.urls import include, path
urlspatterns = [
...
path("", include("django_phonedir.urls")),
...
]
You don't have to use these URL paths and associated templates. Below is a listing of the paths with the associated views and template names.
- Path:
departments- View: DepartmentListView
- Template Name: department_list
- Template File: department_listing.html
- Path:
department/<slug:short_name>/- View: DepartmentDetailView
- Template Name: department_detail
- Template File: department_detail.html
- Path:
search- View: SearchResultsView
- Template Name: search_results
- Template File: search_contact_results.html
Templates
The templates that are provided require daisyUI version 5.5 or newer, Tailwind version 4 or newer, and Font Awesome version 7.0.1 or newer. You can copy the below and add to your base template file to get started quickly.
<!-- DaisyUI + Tailwind CSS -->
<link href="https://cdn.jsdelivr.net/npm/daisyui@5"
rel="stylesheet"
type="text/css" />
<script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>
<!-- Font Awesome for Icons -->
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.0.1/css/all.min.css">
<style>
Models
To use a model, import from django_phonedir.models like so...
from django_phonedir.models import Department, FaxNumber, Contact
Below is a listing of each model, their attributes, and description for each attribute..
Department
- name : Name of the department.
- short_name : Short name that is used in the URL.
- supervisor : Foreign key that points to a user (typically the supervisor).
FaxNumber
- department : Foreign key that points to a Department model.
- description : Description of the fax number.
- phone : PhoneNumberField
- location: Location of fax number.
Contact
- department : Foreign key that points to a Department model.
- first_name : First name.
- last_name : Last name.
- title : Job title.
- extension : Phone extension.
- location : location the user.
- phone : PhoneNumberField (can be blank.)
Development
This project is under active development by myself.
I will develop better documentation at a later date.
Setup
Use pipenv for managing the package requirements for development.
pipenv install --dev
Testing
Tests can be run using the command below.
pipenv run test
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file django_phonedir-0.3.tar.gz.
File metadata
- Download URL: django_phonedir-0.3.tar.gz
- Upload date:
- Size: 26.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9f6219baed226d9d58b6523c8dd617089af4e0d684d956a6dfa2ceb3252af142
|
|
| MD5 |
5cebb2315336308dca96698d8581df88
|
|
| BLAKE2b-256 |
f17b55c4dfcb9add41cb33184b548e7ba9fc16b5507eb5a66882b1d52dcdb952
|
File details
Details for the file django_phonedir-0.3-py3-none-any.whl.
File metadata
- Download URL: django_phonedir-0.3-py3-none-any.whl
- Upload date:
- Size: 19.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e10aca7350e42301d7e964ff6ece86fce4e75f5ffe606e1d15a3fb3d6317183
|
|
| MD5 |
a6d84d97f75a065a5a29570f69eff752
|
|
| BLAKE2b-256 |
de455515b2fe518d354e519558e7aa78ec7dd8fa5a9bb6eb746f68d7e6838018
|