Django快速搭建博客
准备工作:
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快速搭建博客的更多相关文章
- Django快速搭建博客系统
Django快速搭建博客系统 一.开发环境 Windows 7(64bit) python 3.6 https://www.python.org/ Django 2.0 https://www. ...
- Hexo快速搭建博客
1. 准备工作 ~ 安装node.js -> npm -> hexo-cli ~ 安装git -> 版本控制工具 2. 更换npm(nodejs package manager)源 ...
- 使用coding和hexo快速搭建博客
欢迎访问我的个人博客皮皮猪:http://www.zhsh666.xyz 今天教大家怎么用hexo快速搭建自己的博客.我不是专业人士,不懂前端知识,所以我十分讨厌那些专业术语,讲了一大堆,对于技术小白 ...
- 用 Hugo 快速搭建博客
用 Hugo 搭建博客 Hugo 是一个用 Go 编写的静态站点生成器,生成速度很快 下面是具体操作: 1.安装 Hugo Windows 用户 使用 Chocolatey 或者 Scoop 快速安装 ...
- 用Angular2+Express快速搭建博客
1. 写在前面 昨天花了1天的时间把自己的博客从以前的Express换成了Angular2+Express,遂记录于此.博客Demo在这里,你也可以点击这里查看完整代码. 第一次使用Angular2, ...
- Django快速创建博客,包含了整个框架使用过程,简单易懂
创建工程 ...
- 用 hexo 快速搭建博客
如何做到一毛不拔的搭建网站 以下操作全程使用管理员权限,因为我不清楚哪里会出现 permission denied 1.下载 nodejs 对应 windows 用户,下载对应的 ".msi ...
- 使用ASP.NET MVC+Entity Framework快速搭建博客系统
学习 ASP.NET MVC 也有一段时间了,打算弄个小程序练练手,做为学习过程中的记录和分享. 首先,得确定需求,木有需求的话,那还搞个毛线呀!嗯……大致思考了一下,终于得出如下需求: 1.能自定义 ...
- hexo零基础搭建博客系列(一)
关于其他搭建 [hexo4快速搭建博客(二)更换主题](https://blog.csdn.net/weixin_41800884/article/details/103750634)[hexo4快速 ...
随机推荐
- Spring security工作流程及集成
A user enters their username and password into a login screen and clicks a login button. The entered ...
- 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 ...
- webpack+react实现echarts可视化配置
先上效果 开发环境要求 需要事先安装node及npm 前期准备 1.创建文件夹react-echarts-editor2.在项目根目录(以下称根目录)下创建src目录3.在项目根目录下创建dist目录 ...
- BZOJ3294: [Cqoi2011]放棋子(计数Dp,组合数学)
题目链接 解题思路: 发现一个性质,如果考虑一个合法的方案可以将行和列都压到一起,也就是说,在占用行数和列数一定的情况下,行列互换是不会影响答案的,那么考虑使用如下方程: $f[i][j][k]$为占 ...
- valgrind的说明使用和原理
编译 #gcc -g -o test test.c 内存检查#valgrind --tool=memcheck --leak-check=yes --show-reachable=yes ./test ...
- OpenCASCADE Make Face With Holes
OpenCASCADE Make Face With Holes eryar@163.com OpenCASCADE提供了构造Face的类BRepBuilderAPI_MakeFace,使用这个类可以 ...
- 深入解析开源项目之Universal-Image-Loader(二)硬盘---缓存篇
文件命名: FileNameGenerator,HashCodeFileNameGenerator,Md5FileNameGenerator package com.nostra13.universa ...
- js---11闭包
//匿名立即调用函数 (function(){//把a,b,f全部隐藏在函数中,外部访问不到, var a = 5; var b = 6; function f(){ alert(a); } wind ...
- LinkedIn微服务框架rest.li
linkedin/rest.li https://github.com/linkedin/rest.li LinkedIn微服务框架rest.li摘要:Rest.li是一款REST+JSON框架,使 ...
- 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 ...