Python開発未経験のJava/PHP/RubyエンジニアがDjangoでお問い合わせフォームを作る:モデル作成編

アプリケーションの作成

プロジェクトを作ったあとにはアプリケーションを作成する必要があるようです。

python manage.py startapp momo_mail

Modelの定義

momo_mail/models.py

バリデーターなどもimportする必要があるようです。

from django.db import models
from django.core.validators import MaxValueValidator,MinValueValidator
from datetime import datetime
from django.utils.timezone import now
# Create your models here.

class Inquiry(models.Model):
    name = models.CharField( max_length=100)
    zip = models.CharField(max_length=7, blank=True)
    prefecture = models.IntegerField(blank=True,validators=[MinValueValidator(0), MaxValueValidator(50)])
    address1 = models.CharField(max_length=250)
    email = models.CharField(max_length=250)
    content = models.TextField(max_length=10000)
    create_date = models.DateTimeField(default=now)
    update_date = models.DateTimeField(default=now)

Modelの有効化

momomail/settings.py

以下を追記します。

'momo_mail',

マイグレーション

python manage.py makemigrations
python manage.py migrate

管理サイトへのログイン

Djangoにはscaffoldはありません。

管理サイトにログインすることでDBの操作ができるようです。

ユーザーの作成

python manage.py createsuperuser

http://localhost:8000/admin/

からログインをします。

成果物

https://github.com/YoshiteruIwasaki/momomail/commit/b0f281219288e58479a1d9e82df4d33beea1c746