准备工作:

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表示自动设置对象增加时间

最新文章

  1. 使用ICSharpCode.SharpZipLib.Zip类库解压zip文件的方法
  2. django manytomany
  3. Stack的c实现
  4. Python与PHP通过XMLRPC进行通信
  5. ng-style 的坑 - 对性能的影响
  6. Object中的一些方法
  7. ubuntu下安装Node.js(源码安装)
  8. ECSHOP后台SQL查询提示错误 this sql May contain UPDATE,DELETE,TRUNCATE,ALTER,DROP,FLUSH,INSERT
  9. html页面通过特殊链接:打电话,发短信,发邮件详细教程
  10. javaweb学习总结(四十四)——监听器(Listener)学习
  11. BZOJ1831: [AHOI2008]逆序对
  12. Luogu 1962 斐波那契数列(矩阵,递推)
  13. 1000/problem/A
  14. MVC和Web API 过滤器Filter
  15. 微软消息队列-MicroSoft Message Queue(MSMQ)队列的C#使用
  16. the implemention of redblack tree
  17. POI 导出
  18. idea 常用设置初始化
  19. linux:SSH最简单教程
  20. [git]使用vimdiff做git代码比较

热门文章

  1. 【计算机视觉】基于Kalman滤波器的进行物体的跟踪
  2. c#(asp.net) 如何计算两个日期之间相隔天数
  3. 超好用的谷歌浏览器、Sublime Text、Phpstorm、油猴插件合集
  4. 【Henu ACM Round#18 A】 Multiplication Table
  5. CentOS下部署巡风步骤详解
  6. Mysql第八天 分区与分表
  7. 我的Android进阶之旅------&amp;gt;Android实现用Android手机控制PC端的关机和重新启动的功能(二)Androidclient功能展示
  8. Xposed框架之函数Hook学习
  9. [当我在研究Cocos-2dx的源代码时,我在想什么]-Ref类,一切的起源
  10. Android学习笔记进阶18 之画图并保存图片到本地