Django2 でユーザー認証(ログイン認証)を実装するチュートリアル -1- 環境構築とアプリ雛形の作成

Django2 で「ユーザー登録(サインアップ)」と「ユーザー認証(ログイン・ログアウト)」を実装するチュートリアルを作ってみました。簡単なブログアプリを作りながら、ユーザー登録とログイン認証の実装方法を身につけることができます。

この記事では環境構築からブログアプリの作成まで実施、次の記事でユーザー登録と認証を実装していきます。

ブログアプリのCRUD処理を実装すると、本題に入る前にお腹一杯になってしまいます。実装は後回しにして、ひとまずダミーを作るだけにします。サクッと読めるのでご安心ください。

ソースコードとデモサイト

下記よりチュートリアルの最終的なソースコードとデモサイトをチェックできます。

ソースコード
https://github.com/toksan/django2_tutorial_blog_with_auth

デモサイト
https://tutorialauth.it-engineer-lab.com

※突貫工事なので多少あとで手を加えるかと思います。

 

ブログアプリの要件

ユーザー登録、ログイン・ログアウト、ブログ記事の表示・作成・更新・削除ができるだけの簡単なウェブサイトを作っていきます。

ページ・画面 URL例
トップページ(記事一覧) /
記事詳細 /post/1/
記事作成 /post/create/
記事修正 /post/1/update/
記事削除 /post/1/delete
サインアップ /accounts/signup/
ログイン /accounts/login/
ログアウト /accounts/logout/

 

環境構築

まずは環境構築です。

入門チュートリアルと同じなので詳しい説明は省略します。もし不明点があれば Django2 入門チュートリアル – CRUDの基本を簡単なサンプルで学ぶ – 1 – 環境準備 を参照ください。

仮想環境と Django のインストール

まずは仮想環境(myenv)を構築、Django 2.0 のインストールをしましょう。

 

プロジェクトとアプリケーションの作成

続いてプロジェクト(myblog)とアプリケーション(blogs)を作成、初回マイグレートもやってしまいましょう。

 

開発サーバの起動

環境構築が正常に行われたかを確認するため、Django の開発サーバを起動してみます。

ブラウザで http://127.0.01:8000/ にアクセスして、お馴染みの下記画面が表示されれば完了です。

Django 2.0 開発サーバのデフォルト画面

ディレクトリとファイルの状況

現時点でのディレクトリとファイルは下記になっているかと思います。

 

モデル作成とマイグレーション

続いてモデル作成とマイグレーションです。

入門チュートリアルと同じなので詳しい説明は省略します。もし不明点があれば Django2 入門チュートリアル – CRUDの基本を簡単なサンプルで学ぶ – 2 – モデルとマイグレーション を参照ください。

モデル(Post)の作成

アプリケーション blogs の中にブログ記事を扱うためのモデル Post を作成します。myblog/blogs/models.py を下記のように編集しましょう。

 

アプリケーションの追加

続いて プロジェクトの設定ファイル myblog/settings.py 中にある INSTALLED_APPS にプロジェクト(myblog)にアプリケーション(blogs)を追加しましょう。これにより先ほど作成した Post モデルが有効化されます。

マイグレーション

最後にターミナル(コマンドプロンプト)からマイグレートすれば完了です。

 

URL設定(URLConf)

Django のURL設定は「アプリケーションレベルのURL設定」と「プロジェクトレベルのURL設定」の2つが必要です。

入門チュートリアルと同じなので詳しい説明は省略します。もし不明点があれば Django2 入門チュートリアル – CRUDの基本を簡単なサンプルで学ぶ – 4 – 汎用クラスベースビューによるCRUDの実装を参照ください。 

アプリケーションレベルのURL設定

myblog/blogs/urls.py というファイルを新規作成し、アプリケーション内URLConfを設定します。

 

プロジェクトレベルのURL設定

myblog/myblog/urls.py を下記のように編集します。※プロジェクト作成コマンドで自動生成されているので新規作成ではありません。

 

ビューの作成

このチュートリアルの目的はログイン認証の実装なので、ひとまずダミーを作っておきましょう。記事の表示、新規作成、更新、削除の処理についての実装は後回しにします。

myblog/blogs/views.py を編集します。

開発サーバを起動して下記にアクセスしてみましょう。1行メッセージのみが表示されるかと思います。

http://127.0.0.1:8000/
http://127.0.0.1:8000/post/1/
http://127.0.0.1:8000/post/create/
http://127.0.0.1:8000/post/1/update/
http://127.0.0.1:8000/post/1/delete/

以上でブログアプリのダミーが完成しました。

次の記事でユーザー登録(サインアップ)とユーザー認証(ログイン・ログアウト)を実装していきます。

1 Comment

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です