skip to content
barorin&

Djangoで基本的なポストモデルを作成してみる

/ 2 min read

Table of Contents

はじめに

Djangoで基本的なポストモデルを作成してみましょう。

方法

ライブラリのインストール

Terminal window
$ pip install django-currentuser
# ついでにuuidを作成できるライブラリも
$ pip install ulid-py

ミドルウェアとして登録

settings.py
MIDDLEWARE = [
...
"django_currentuser.middleware.ThreadLocalUserMiddleware", # 追加(django-currentuserの設定)
]

モデルの作成

models.py
from django_currentuser.db.models import CurrentUserField
from django.db import models
class Posts(models.Model):
id = models.CharField(primary_key=True, default=ulid.new, max_length=26, editable=False)
created_by = CurrentUserField(verbose_name="作成者", related_name="create_customer")
created_at = models.DateTimeField(verbose_name="作成日時", auto_now_add=True)
updated_by = CurrentUserField(verbose_name="更新者", related_name="update_customer", on_update=True)
updated_at = models.DateTimeField(verbose_name="更新日時", auto_now=True)

(おまけ)開発用の設定ファイルで起動する

設定ファイルを本番用と開発用で分けている場合、runserver に読み込ませる設定を指定できます。

Terminal window
$ python manage.py runserver --settings hoge.settings_dev

hoge.settings_dev は「フォルダ名.設定ファイル名」の形式です。.py は付けません。

参考

Django 作成者 作成日時 更新者 更新日時を管理する

この記事を書いた人

barorinのプロフィール画像

barorin公認会計士

会計とITの二足のわらじで働く公認会計士です。Pythonを中心に、会計・監査の実務で実際に使っているコードや、Ubuntu・Raspberry Piの設定メモを書いています。