准备工作:

1.Python

2.Django

3.Git

安装Python:

官网下载

安装Django:

#安装最新版本的Django
$ pip install django
#或者指定安装版本
pip install -v django==1.7.1

现在正式开始创建一个名为my_blog的Django项目:

$ django-admin.py startproject my_blog

建立Django app(article):

$ python manage.py startapp article

到目前为止的项目结构如下:

── article
│ ├── __init__.py
│ ├── admin.py
│ ├── migrations
│ │ └── __init__.py
│ ├── models.py
│ ├── tests.py
│ └── views.py
├── db.sqlite3
├── manage.py
├── my_blog
├── __init__.py
├── __pycache__
│ ├── __init__.cpython-34.pyc
│ ├── settings.cpython-34.pyc
│ ├── urls.cpython-34.pyc
│ └── wsgi.cpython-34.pyc
├── settings.py
├── urls.py
└── wsgi.py

 并在my_blog/my_blog/setting.py下添加新建app:

INSTALLED_APPS = (
...
'article', #这里填写的是app的名称
)


运行程序!启动Django中的开发服务器:

$ python manage.py runserver

  

如果出现以上界面则说明运行成功。


 命令总结

python manage.py <command> [options]  #Django Command python manange.py -h帮助文档
django-admin.py startproject my_blog #创建项目
python manage.py startapp article #创建app

Django Model:

  • 每一个Django Model都继承自django.db.models.Model
  • Model当中每一个属性attribute都代表一个database field
  • 通过Django Model API可以执行数据库的增删改查, 而不需要写一些数据库的查询语句

设置数据库:

Django项目建成后, 默认设置了使用SQLite数据库, 在my_blog/my_blog/setting.py中可以查看和修改数据库设置

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}

还可以设置其他数据库, 如MySQL, PostgreSQL, 现在为了简单, 使用默认数据库设置。

创建models:

在my_blog/article/models.py下编写以下代码

from django.db import models

# Create your models here.
class Article(models.Model) :
title = models.CharField(max_length = 100) #博客题目
category = models.CharField(max_length = 50, blank = True) #博客标签
date_time = models.DateTimeField(auto_now_add = True) #博客日期
content = models.TextField(blank = True, null = True) #博客文章正文 #python2使用__unicode__, python3使用__str__
def __str__(self) :
return self.title class Meta: #按时间下降排序
ordering = ['-date_time']

其中__str__(self) 函数Article对象要怎么表示自己, 一般系统默认使用<Article: Article object> 来表示对象, 通过这个函数可以告诉系统使用title字段来表示这个对象

  • CharField 用于存储字符串, max_length设置最大长度
  • TextField 用于存储大量文本
  • DateTimeField 用于存储时间, auto_now_add设置True表示自动设置对象增加时间

Django快速搭建博客的更多相关文章

  1. Django快速搭建博客系统

    Django快速搭建博客系统 一.开发环境 Windows 7(64bit) python 3.6   https://www.python.org/ Django 2.0  https://www. ...

  2. Hexo快速搭建博客

    1. 准备工作 ~ 安装node.js -> npm -> hexo-cli ~ 安装git -> 版本控制工具 2. 更换npm(nodejs package manager)源 ...

  3. 使用coding和hexo快速搭建博客

    欢迎访问我的个人博客皮皮猪:http://www.zhsh666.xyz 今天教大家怎么用hexo快速搭建自己的博客.我不是专业人士,不懂前端知识,所以我十分讨厌那些专业术语,讲了一大堆,对于技术小白 ...

  4. 用 Hugo 快速搭建博客

    用 Hugo 搭建博客 Hugo 是一个用 Go 编写的静态站点生成器,生成速度很快 下面是具体操作: 1.安装 Hugo Windows 用户 使用 Chocolatey 或者 Scoop 快速安装 ...

  5. 用Angular2+Express快速搭建博客

    1. 写在前面 昨天花了1天的时间把自己的博客从以前的Express换成了Angular2+Express,遂记录于此.博客Demo在这里,你也可以点击这里查看完整代码. 第一次使用Angular2, ...

  6. Django快速创建博客,包含了整个框架使用过程,简单易懂

    创建工程                                                                                                 ...

  7. 用 hexo 快速搭建博客

    如何做到一毛不拔的搭建网站 以下操作全程使用管理员权限,因为我不清楚哪里会出现 permission denied 1.下载 nodejs 对应 windows 用户,下载对应的 ".msi ...

  8. 使用ASP.NET MVC+Entity Framework快速搭建博客系统

    学习 ASP.NET MVC 也有一段时间了,打算弄个小程序练练手,做为学习过程中的记录和分享. 首先,得确定需求,木有需求的话,那还搞个毛线呀!嗯……大致思考了一下,终于得出如下需求: 1.能自定义 ...

  9. hexo零基础搭建博客系列(一)

    关于其他搭建 [hexo4快速搭建博客(二)更换主题](https://blog.csdn.net/weixin_41800884/article/details/103750634)[hexo4快速 ...

随机推荐

  1. Spring security工作流程及集成

    A user enters their username and password into a login screen and clicks a login button. The entered ...

  2. Chromium Graphics: HW Video Acceleration in Chrom{e,ium}{,OS}

    HW Video Acceleration in Chrom{e,ium}{,OS} Ami Fischman <fischman@chromium.org> Status as of 2 ...

  3. webpack+react实现echarts可视化配置

    先上效果 开发环境要求 需要事先安装node及npm 前期准备 1.创建文件夹react-echarts-editor2.在项目根目录(以下称根目录)下创建src目录3.在项目根目录下创建dist目录 ...

  4. BZOJ3294: [Cqoi2011]放棋子(计数Dp,组合数学)

    题目链接 解题思路: 发现一个性质,如果考虑一个合法的方案可以将行和列都压到一起,也就是说,在占用行数和列数一定的情况下,行列互换是不会影响答案的,那么考虑使用如下方程: $f[i][j][k]$为占 ...

  5. valgrind的说明使用和原理

    编译 #gcc -g -o test test.c 内存检查#valgrind --tool=memcheck --leak-check=yes --show-reachable=yes ./test ...

  6. OpenCASCADE Make Face With Holes

    OpenCASCADE Make Face With Holes eryar@163.com OpenCASCADE提供了构造Face的类BRepBuilderAPI_MakeFace,使用这个类可以 ...

  7. 深入解析开源项目之Universal-Image-Loader(二)硬盘---缓存篇

    文件命名: FileNameGenerator,HashCodeFileNameGenerator,Md5FileNameGenerator package com.nostra13.universa ...

  8. js---11闭包

    //匿名立即调用函数 (function(){//把a,b,f全部隐藏在函数中,外部访问不到, var a = 5; var b = 6; function f(){ alert(a); } wind ...

  9. LinkedIn微服务框架rest.li

    linkedin/rest.li  https://github.com/linkedin/rest.li LinkedIn微服务框架rest.li摘要:Rest.li是一款REST+JSON框架,使 ...

  10. Codefroces Educational Round 27 845G Shortest Path Problem?

    Shortest Path Problem? You are given an undirected graph with weighted edges. The length of some pat ...