model.py 创建model
from django.db import models
from django.utils import timezone
# Create your models here.
class Post(models.Model):
title = models.CharField(max_length= 200)
subTitle = models.CharField(max_length= 200)
content = models.TextField(default="")
pub_date = models.DateTimeField(default=timezone.now)
class Meta:
ordering = ('-pub_date',)
def __str__(self):
return self;
记得使数据库生效
python manage.py makemigrations mainsite
python manage.py migrate
创建后台管理页面
Python manage.py createsuperuser
admin.py
from django.contrib import admin
from .models import Post
# Register your models here.
class PostAdmin(admin.ModelAdmin):
list_display = ('title','pub_date')
admin.site.register(Post,PostAdmin)
访问 http://127.0.0.1:8000/admin 进行管理
创建主页面
view.py
from django.shortcuts import render
from django.http import HttpResponse
from .models import Post
from datetime import datetime
from django.template.loader import get_template
# Create your views here.
def homepage(request):
template = get_template("index.html")
posts = Post.objects.all()
now = datetime.now()
html =template.render(locals())
return HttpResponse(html)
setting.py
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
--> 'DIRS': [os.path.join(BASE_DIR,"templates")],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
urls.py
from django.conf.urls import url
from django.contrib import admin
from mainsite.views import homepage
urlpatterns = [
url(r'^$',homepage),
url(r'^admin/', admin.site.urls),
]
添加templates文件夹
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>欢迎来到我的博客</title>
</head>
<body>
<h1>欢迎来到我的博客</h1>
<hr>
{% for post in posts %}
<p>{{post.title}}</p>
<p>{{post.content}}</p>
{% endfor %}
<hr>
<h3>now time :{{now}}</h3>
</body>
</html>