いよいよblogフォルダの中を作成してきます。ブログの構成は次の単純なものにします。
各Postはタイトル、本文、カテゴリー、タグ、作成日、更新日で構成。
カテゴリーとタグは1対多になるので、定義する事が必要です。
ここまで決まれば、まずはmodel.pyにこの構成を記載していきます。
from django.db import models
from django.utils import timezone
# Create your models here.
class Category(models.Model):
lang_type = models.CharField(max_length=50)
def str(self):
return self.lang_type
class Meta:
db_table =
class Tag(models.Model):
lang_type = models.CharField(max_length=50)
def str(self):
return self.lang_type
class Meta:
db_table =
class Post(models.Model):
title = models.CharField(max_length=50)
contents = RichTextField(Contents)
category = models.ForeignKey(Category,on_delete=models.SET_NULL,blank=True,null=True)
tag = models.ForeignKey(Tag,on_delete=models.SET_NULL,blank=True,null=True)
created_at = models.DateTimeField(Created,auto_now_add=True)
updated_at = models.DateTimeField(Update,auto_now=True)
def str(self):
return self.title
class Meta
db_table =blogs
db_tableの名前は適当に変えてください。カテゴリーとタグはForeignKeyで定義することを忘れない事がポイントでしょうか。
ついでに、admin.pyも同じフォルダに作成しておきましょう。PostとCategoryとTagをつくればいいので、
from django.contrib import admin
from .models import Post,Category,Tag
# Register your models here.
admin.site.register(Post)
admin.site.register(Category)
admin.site.register(Tag)
でOKです。このあたり、簡単に作る事ができるのが、Djangoの素晴らしい点ですね。次はviews.pyの作成に移ります。