គោលដៅ​ដ៏​ចំបង​នៃ​កម្មវិធី​ Blog គឺ​ដើម្បី​អាច​ចុះ​ផ្សាយ​នូវ​អត្ថបទ​ព័ត៌មាន​ផ្សេង​ៗ​នៅ​លើ​បណ្តាញ Internet ។ ក៏ប៉ុន្តែ មុន​នឹង​អាច​ចុះ​ផ្សាយ​អត្ថបទ​ផ្សេង​ៗ​បាន យើង​ចាំបាច់​ត្រូវ​បង្កើត​គំរូ​ទិន្នន័យ​នៃ​ការផ្សាយ​ជាមុន​សិន​។ ជាទូទៅ នៅ​ក្នង​កញ្ចប់ Django ការបង្កើត​គំរូ​ទិន្នន័យ​ត្រូវ​ធ្វើ​ឡើង ដោយ​បង្កើត​ថ្នាក់​រង (subclass) នៃ​ថ្នាក់​មេ django.db.models.Model (superclass) ។ ហើយ field និមូយៗ​នៅ​ក្នុង​ថ្នាក់​រង តំណាង​អោយ​ field នៅ​ក្នុង​មូលដ្ឋានទិន្នន័យ​​របស់​យើង​។

 

អាស្រ័យហេតុ​នេះ តាមរយថ្នាក់រង​របស់​យើង យើង​អាច​ប្រើប្រាស់​គ្រប់​ field និង​ method នៅ​ក្នុង​ថ្នាក់​មេ django.db.models.Model ។ ហើយ​ការបង្កើត​គំរូទិន្នន័យ​នៃ​ការផ្សាយ​របស់​យើង​ អាច​ត្រូវ​ធ្វើ​ឡើង​នៅ​ក្នុង​ឯកសារ models.py ​ដូច​ខាង​ក្រោម​នេះ៖

 

from django.db import models
from django.contrib.auth.models import User

# Create your models here.

STATUS = (
    (0,"Draft"),
    (1,"Publish")
)

class Post(models.Model):
    title = models.CharField(max_length=200, unique=True)
    slug = models.SlugField(max_length=200, unique=True)
    author = models.ForeignKey(User, on_delete= models.CASCADE,related_name='blog_posts')
    updated_on = models.DateTimeField(auto_now= True)
    content = models.TextField()
    created_on = models.DateTimeField(auto_now_add=True)
    status = models.IntegerField(choices=STATUS, default=0)

    class Meta:
        ordering = ['-created_on']

    def __str__(self):
        return self.title

 

បន្ទាប់​មក​ទៀត យើង​ចាំបាច់​ត្រូវ​ចុះ​បញ្ជី​គំរូទិន្នន័យ​របស់​យើង​នៅ​ក្នុង​ប្រព័ន្ធ Django នៅ​ក្នុងឯកសារ admin.py ដោយ​ធ្វើ​ដូច​ខាង​ក្រោម​នេះ៖

 

from django.contrib import admin
from .models import Post 

# Register your models here.

admin.site.register(Post)