开始学习Django
写作灵感的来源
我打算使用Django来进行Web应用程序的服务器端配置,并将相关的命令和初始设置整理成备忘录。
目录
-
- Djangoとは
-
- Djangoを用いたWebアプリ作成手順
Djangoプロジェクト作成
アプリケーション作成
初期設定
アプリケーション実行
モデルをデータベースに適用する
管理画面のログイン情報設定
まとめ
Django是什么
Django是一种用Python实现的Web应用程序框架,它是一个拥有完整功能的全栈框架,包含了实现Web应用所需的各种功能。
使用Django创建Web应用的步骤。
1. 创建Django项目
首先,您需要使用以下命令创建Django项目来创建Django项目。
“sample”是项目名称。
$ django-admin startproject sample
执行命令后的目录结构如下所示。
.
├── manage.py
└── sample
├── __init__.py
├── wsgi.py
├── urls.py
└── setting.py
ファイル名役割manage.py開発用サーバーの起動,データベースへデータ反映,Djangoの操作管理__init__.pyパッケージ読み込んだ際の初期化用ファイルwsgi.pyDjangoを本物のWebサーバー上で動作させるファイルurls.pyブラウザからアクセスしたURLに対応した処理を定義するためのファイルsetting.pyDjangoプロジェクト全体の設定を定義するファイル
2. 应用程序的创建
创建Django项目后,进入项目内部,并执行以下命令来创建Web应用程序文件夹。
$ python3.10 manage.py startapp sample_app
执行命令后的目录结构将如下所示。
.
├── manage.py
├── sample
└── sample_app
├── admin.py
├── apps.py
├── models.py
├── test.py
└── setting.py
ファイル名役割admin.py管理画面の設定を行うファイルapps.pyアプリ自体の設定を行うファイルmodels.pyデータベースの操作をするファイルtest.pyDjangoアプリのテストを書くためのファイルviews.py実際の処理を書くファイル
3. 初始设置
如果能够创建Web应用程序文件夹,那么修改sample/settings.py中的INSTALLED_APPS,以便Web应用程序与Django进行连接。同时,将使用的语言和时间调整为日本格式。
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'sample_app.apps.SampleAppConfig' # 追加
]
# 使用する言語を日本語にする
LANGUAGE_CODE = 'ja'
# 時間をTokyoにする
TIME_ZONE = 'Asia/Tokyo'
在修改 `sample/settings.py` 后,接下来需要修改 `sample/urls.py`,以将URL与Web应用程序链接起来。
from django.contrib import admin
from django.urls import path,include
urlpatterns = [
path('admin/', admin.site.urls),
path('/', include('sample_app.urls')),
]
完成此设置后,编写views.py和models.py来创建应用程序。
4. 运行应用程序
当您想要在浏览器中检查应用程序的行为时,请执行以下命令。
$ python3.10 manage.py runserver
5. 将模型应用于数据库
在使用数据库时,需要将在models.py中创建的模型应用到数据库中,并使用以下两个命令进行操作。
第一个命令用于创建makemigrations文件,第二个命令将其应用到数据库中。
$ python3.10 manage.py makemigrations sample_app
$ python3.10 manage.py migrate
6. 设定管理界面的登录信息
Django框架预先提供了一个管理界面,通过以下命令设置登录该管理界面所需的用户名和密码。
$ python3.10 manage.py createsuperuser
总结
文件数量多且有些复杂,但是能够方便地进行整体路由和数据库管理非常便利。