はじめに
DjangoとはPythonで実装されたWebアプリケーションフレームワークです。Djangoを使うと、コンテンツ管理システムやWikiからソーシャルネットワーク、ニュースサイトなど、高品質なWebアプリケーションが簡単に、少ないコードで作成できます。
今回はDjangoを使って、簡単な顧客管理システムを作っていきます。
設計と環境構築
作業内容
まずは簡単に作業内容を確認していきます。
- 要件定義
- 必要な機能を確認し、モデルやデータベースの構造設計
- 例:顧客モデル、商談履歴モデル、カテゴリモデル
- 環境構築
- Djangoプロジェクトを作成
- 必要なライブラリをインストール
- アプリケーションの作成と設定
要件定義
ここでは必要な機能を確認していきます。今回作成するの顧客管理システムなので、最低限以下のような機能は必要かなと思いました。
- 顧客情報管理
- 顧客の登録、編集、削除
- 顧客名、メールアドレス、電話番号、住所などの基本情報
- 商談履歴管理
- 顧客ごとに商談履歴を記録
- 商談のタイトル、日付、内容、担当者などの情報を管理
- カテゴリに分類
- 顧客カテゴリやタグで分類可能にする
- VIP顧客、見込み客、既存顧客など
- 検索とフィルタリング
- 顧客名やカテゴリでの検索
- タグや登録日でのフィルタリング
- ダッシュボート
- 顧客数や商談数を一目で確認できる画面
- シンプルな統計情報を表示
環境構築
Djangoのプロジェクト作成と必要ライブラリのインストールを行っていきます。
Djangoのインストールとプロジェクト作成
pip install django
pip install django-filter
django-admin startproject crm_project
これでDjangoのプロジェクトcrm_projectと必要ライブラリdjango-filterのインストールが完了です。
アプリケーションの作成と設定
先ほど作成したcrm_projectに移動して、プロジェクト作成時に作成されたmanage.pyを使用してアプリケーションを作成します。
cd crm_project
python manage.py startapp crm_app
次に作成したアプリケーションの設定を行っていきます。crm_project/crm_project内のsettings.pyにアプリケーションの登録を行います。
...
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'crm_app.apps.CrmAppConfig',#追加
]
...
LANGUAGE_CODE = 'ja'
TIME_ZONE = 'Asia/Tokyo'
USE_I18N = True
USE_TZ = True
...
INSTALLED_APPSに作成したアプリケーションを記述し、LANGUAGE_CODEとTIME_ZONEを日本と東京に設定しました。
これで、アプリケーションの登録と設定が完了です。
次回、モデル作成を行っていきます。
1つ目:Djangoを使用した顧客管理システムの作成
https://qiita.com/tomo0227/items/cc893ea4e8e6cfb6ad77
2つ目:顧客管理システムのモデル作成
https://qiita.com/tomo0227/items/11f6a262ee1da183fd70
3つ目:顧客管理システムのCRUD機能の実装
https://qiita.com/tomo0227/items/054c974e104f81ea82db
4つ目:商談履歴管理システムの作成
https://qiita.com/tomo0227/items/7b9934ab4bc36cdcd4e8
5つ目:
https://qiita.com/tomo0227/items/a86f7bf038e87be11892