割烹エディターβ版リリースメモ1(Djangoプロジェクトの作成)
割烹エディターのα版ができたので、もう少し便利にしていくためにWebアプリケーションフレームワークに組み込んでいきます。
使うのはDjango。Pythonのフレームワークです。
まぁホントは、ReactとかJavascript系のフレームワークの方がいいのかもしれませんけど、今後のためにDjangoに慣れておく必要があるので使います。
環境はWindows10、Python 3.8、Django 3.0、Pycharmです。
Django参考
プロジェクトの作成
ということで早速プロジェクトを作っていきます。
mkdir keditor
cd keditor
python -m venv myvenv
myvenv\Scripts\activate
pip install django
keditorプロジェクトフォルダを作って、そこに仮想環境を作って、Djangoをインストールします。
django-admin startproject project .
projectを作成しました。これでDjangoプロジェクトの作成が終わりました。
今のフォルダはこんな感じになっています。
初期設定を行う
settings.pyを開いて初期設定を行います。
LANGUAGE_CODE = 'ja'
TIME_ZONE = 'Asia/Tokyo'
まずは、言語とタイムゾーンを設定。
次にテンプレート、メディア、静的ファイルの保存場所を変更します。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, "templates")],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
Djangoのテンプレートや静的ファイルは各アプリケーション直下に置くのがデフォルトですが、自分は管理が面倒になるのが嫌なので直下になるように指定します。
データベースはデフォルトのSQlite3を使います。そこまで大量のデータを扱うわけでもないのでこれで十分でしょう。
ということで、各フォルダも作って、こんな感じになりました。
python manage.py runserver
開発サーバーを立ち上げて、 http://127.0.0.1:8000/にアクセスすると、おなじみの画面が出てきました。
これでプロジェクトの作成が終わったので、次に各アプリケーションを作っていきます。
作るアプリケーション
・topアプリ-Topページ用のアプリケーション 色々といじりたいので独立させておく。
・infoアプリ-運営用のアプリケーション。お知らせやヘルプ用として使う。
・accountsアプリ-ユーザー登録用のアプリ。
・editorアプリ-メイン機能。割烹エディター用。
4つのアプリケーションを作っていきます。
まぁといってもそこまで難しいものは作りませんが。
今回勉強したいのはaccountsですね。ユーザー登録やログイン処理などを学びたいです。
ということでアプリだけ作っておきますか。
python manage.py start app top
python manage.py start app info
python manage.py start app accounts
python manage.py start app editor
アプリを作ったのでsettingsに登録します。
INSTALLED_APPS = [
'top.apps.TopConfig',
'info.apps.InfoConfig',
'accounts.apps.AccountsConfig',
'editor.apps.EditorConfig',
これでアプリケーションの準備も終わりました。
次からそれぞれを作っていきます。
良ければサポートお願いします。サポート費用はサーバー維持などの開発費に使わせていただきます。