django實戰(一)簡單部落格顯示
一直想好好學習一下Python,正好Django是一個很好的網站開發框架,可以用來web程式。接下來,以一個部落格為例。
一、建立基本框架:(django1.0+python3.6+pycharm)
(1)建立專案
控制檯輸入以下命令:
django-admin startproject MyDjango
(2)建立app
cd MyDjango
Python manage.py startapp MyBlog
二、Django應用程式開發(MVT框架開發)
1 資料庫表的建立(M)
Myblog/model.py:
首先,在setting.py中的INSTALLED_APPS里加上MyBlog;
在model.py內建立表內容:(標題,內容,釋出時間等)
class BlogPost(models.Model):
title=models.CharField('標題',max_length=50)
content=models.TextField(help_text='部落格內容')
pub=models.DateTimeField('釋出時間')
class Meta:
verbose_name = "部落格"
verbose_name_plural = verbose_name
ordering = ["-pub"]
def __str__ (self):
return self.title
資料庫建立完成後,執行以下:
python manage.py makemigrations
python manage.py migrate
建立成功。
管理資料庫內容:
#coding=utf-8
from django.contrib import admin
from .models import BlogPost
# Register your models here.
class BlogPostAdmin(admin.ModelAdmin):
list_display = ('title' ,'pub')
admin.site.register(BlogPost,BlogPostAdmin)
建立管理員:python manage.py createsuperuser
輸入使用者名稱,密碼;建立成功。
輸入以下命令:python manage.py runserver執行伺服器
然後在瀏覽器網址127.0.0.1:8000/admin登入:點選新增部落格
![圖片1](https://img-blog.csdn.net/20170325160241564?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE4ODUyODY3MDM1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![圖片2](https://img-blog.csdn.net/20170325160325508?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE4ODUyODY3MDM1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
2 新增檢視控制:(V)
view.py裡:(一個檢視函式對應一個url)
#coding=utf-8
from django.shortcuts import render,render_to_response
from .models import BlogPost
# Create your views here.
def myBlog(request):
blog_list=BlogPost.objects.all()
return render_to_response('BlogTemplate.html',{'blog_list':blog_list})
urls.py裡,定義新的url:
url(r’^myBlogs/$’,myBlog),#當然得引入view(from MyBlog.view import *)
3 完成模板配置(T)
在MyBlog資料夾裡新建資料夾templates,然後在templates裡新建BlogTemplate.html。
我們可以定義一個基礎的base.html作為所有頁面的基類:
base.html
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>標題</title>
</head>
<style type="text/css">
body{
color:#efd;
background: #bbbbbb;
padding: 12px 5em;
margin: 7px;
}
h1{
padding: 2em ;
background: #675;
}
h2{
color: #85F2F2;
border-top: 1px dotted #fff;
}
p{
margin: 1em 0;
}
</style>
<body>
<h1>我的博文</h1>
<h3>這是簡潔的博文</h3>
{% block content %}{% endblock %}
</body>
</html>
{% extends “base.html” %}
{% block content %}
{% for post in blog_list %}
<h2>{{ post.title }}</h2>
<p>{{ post.pub}}</p>
<p>{{ post.content }}</p>
{% endfor %}
{% endblock %}
”’
執行命令:Python manage.py runserver,獲得URL
在瀏覽器輸入:http://127.0.0.1:8000/myBlogs/,獲得內容:
到這裡,一個簡單的部落格就結束了。
總結一下:django開發是以MVT模式開發的,熟悉每個模組的作用才能開發出好的程式。