Djangoには、プロジェクトとアプリケーションの構成があり、
プロジェクトの中に、アプリケーションが含まれてといった構成になっています。
プロジェクト、アプリケーションの作成の仕方は下記を参考にしてください。
フォルダ構成
上記で作ったフォルダ構成は下記の通りです。
プロジェクト名 「example」 アプリケーション名「testapp」
EXAMPLE │ manage.py │ ├─example │ │ settings.py │ │ urls.py │ │ wsgi.py │ │ __init__.py │ │ │ └─__pycache__ │ settings.cpython-37.pyc │ __init__.cpython-37.pyc │ └─testapp │ admin.py │ apps.py │ models.py │ tests.py │ views.py │ __init__.py │ └─migrations __init__.py
プロジェクトにアプリケーションを適用
アプリケーションのディレクトリにhtmlやpythonファイルを使う前に、
プロジェクトがtestappというアプリケーションを持っていることを認識させる必要があります。
アプリケーションをプロジェクトに含める
アプリケーションをプロジェクトを含めて適用させるには、
example/example/settings.pyを下記のように変える必要があります。
INSTALLED_APPS = [ 'example.apps.TestappConfig', # 追加 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ]
上記では、testapp/apps.pyのTestappConfigクラスをINSTALLED_APPSに追加しています。
これで、exampleプロジェクトは、testappをアプリケーションと認識できます。
URLの設定
アプリケーションを作成したら、そのアプリに
urls.pyを作ってURLの管理をするのが普通です。
今回だとtestappフォルダ直下に、urls.pyを作ります。
testapp/urls.py サンプル
from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), # パスの追加 ]
上記のtestapp/urls.py をexample/urls.pyにurlの設定に加えます。
example/urls.py
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('testapp/', include('testapp.urls')), ]
path(‘testapp/’, include(‘testapp.urls’))でtestappのurls,pyを見るようにしています。
path()の第1引数は、URLの先頭に何の文字列をつけるか、
第2引数がアプリケーションのurls.pyというように使っています。
これで基本的な準備は整いました。