django中sqlite3的配置使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_21182587/article/details/69573850

最近在学django web开发,几乎所有的教程最开始都是教django关联数据库(完全不知道为啥。。。。),看了很多的教程,东一句西一句的,没有一个完整的可用教程。而且由于django版本更新,很多以前的命令、设置都变了,所以自己写一篇博客,将来说不定会用到。

已知已经创建了一个项目“”mysite”,在此项目下创建了应用“myapp”,现需要在“myapp”中配置sqlite3。

注:本篇博客用的django版本为1.10.6

一、sqlite3安装
参考链接,安装sqlite3

二、sqlite3创建数据库
(示例:在当前目录下创建一个新的数据库“test.db”,此段步骤参考:菜鸟教程-sqlite创建数据库
进入当前项目目录(例如:‘D\python\workspace\mysite’),打开cmd,输入以下命令:

sqlite3 test.db
SQLite version 3.7.15.2 2013-01-09 11:53:05
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>

数据库创建成功后使用.databases命令来检查它是够在数据库列表中,如下所示:

sqlite>.databases
main: D:\python\workspace\mysite\test.db

使用.quit命令退出sqlite提示符,打开文件夹即可看到创建的“test.db”文件。
三、修改settings.py文件
(此段步骤参考:django数据库使用

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': {path\name.db}',
        'USER': '',
        'PASSWORD': '',
        'HOST': '',
        'PORT': '',
    }
}

四、进入数据库文件cmd界面,运行python manage.py shell
(此段参考同三)
运行结果如下:

D:\Python\Workspace\mysite>python manage.py shell
Python 2.7.12 |Anaconda custom (64-bit)| (default, Jun 29 2016, 11:07:13) [MSC v.1500 64 bit (AMD64)]
Type "copyright", "credits" or "license" for more information.

IPython 5.1.0 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

输入以下命令:

In [1]: from django.db import connection

In [2]: cur = connection.cursor()

如果没报错,则表示配置成功
五、修改models.py文件,配置自己的表
(此段参考同三)

models.py中输入以下代码:

from django.db import models
from django.contrib import admin

class BlogPost(models.Model):
    title = models.CharField(max_length = 150)
    body  = models.TextField()
    timestamp = models.DateTimeField()
    class Meta:
    ordering = ['-timestamp']

六、同步数据库
(此段参考:自强学堂-Django教程django官方文档
打开cmd,输入命令:python manage.py makemigrations myapp
会看到以下结果:

Migrations for 'myapp':
  myapp\migrations\0001_initial.py:
    - Create model BlogPost

接着输入命令:python manage.py migrate myapp 0001

看到如下结果表明数据库创建成功

BEGIN;
--
-- Create model BlogPost
--
CREATE TABLE "myapp_blogpost" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "title" varchar(150) NOT NULL, "body" text NOT NULL, "timestamp" datetime NOT NULL);
COMMIT;

大功告成!!!

我的第一篇技术博客,也是第一次用markdown(真的超好用),从来没想到自己也会写技术博客。

今天心情复杂又难过。看了好几篇曾国藩日记,希望能从圣贤的智慧中学到行事之道,学会管理自己的情绪。

莫慌张。

猜你喜欢

转载自blog.csdn.net/qq_21182587/article/details/69573850
今日推荐