django项目3——连接sqlite数据库

django1.8.2版本连接sqlite数据库

一、创建djnago项目

file------new project

创建完毕

验证是否成功,运行

二、创建app

#如果怕命令打错,可以先执行python manage.py

python manage.py startapp myapp #会在根目录下出现一个myapp文件夹

三、配置settings.py

settings.py中注册app

INSTALLED_APPS = (

...,

'myapp',

)

检查settings.py是否有配置templates的路径(我这儿创建django项目时就已经生成,无需再配置)

四、写一个页面

第一步:myapp/views.py定义视图(用上V)

from django.shortcuts import render
from django.http import HttpResponse
def index(request):
    return HttpResponse("这是一道白切鸡!!!!!!!!")

第二步:blog/urls.py中注册视图(路由)

from django.conf.urls import include, url
from django.contrib import admin
from myapp.views import index

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^index/', index,name='index'),
]

第三步:项目重启后访问

127.0.0.1:8000/index/

五、美化页面(用上T)

第一步:templates定义模板

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1 style="background-color:greenyellow">这是一道白切鸡!!!!</h1>
</body>
</html>

第二步:修改myapp/views.py视图(用上V)

from django.shortcuts import render
from django.http import HttpResponse
def index(request):
    # return HttpResponse("这是一道白切鸡!!!!!!!!")
    return render(request,'myapp/index.html')

第三步:项目重启后访问

127.0.0.1:8000/index/

六、连接数据库(sqlite3)

1.myapp/models.py定义模型

from django.db import models

class LoginUser(models.Model):
    user_name=models.CharField(max_length=20)
    desc=models.CharField(max_length=20)

2.terminal终端执行迁移命令

#第一步 生成迁移文件 (在项目文件中生成映射文件)

python manage.py makemigrations

#第二步 执行迁移(在数据库中生成表)

python manage.py migrate

如果修改、添加了字段,则需要重复以上两步完成数据库的迁移。

添加一个字段

from django.db import models

class LoginUser(models.Model):
    user_name=models.CharField(max_length=20)
    desc=models.CharField(max_length=20)
    # age=models.CharField(max_length=20)
    age=models.CharField(max_length=20,default='')

执行迁移,出现如下

先选择2

打开navicat,连接sqlite3数据库

然后测试连接

输入一行

3.myapp.views.py中使用

from django.shortcuts import render
from django.http import HttpResponse
from myapp.models import LoginUser
def index(request):
    # return HttpResponse("这是一道白切鸡!!!!!!!!")
    # return render(request,'myapp/index.html')
    user=LoginUser.objects.first()
    return render(request,"myapp/index.html",context={'user':user})

4.templates/mapp/index.html中渲染

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
名字:<h1>{{user.user_name}}</h1>
描述:<h1>{{user.desc}}</h1>
年龄:<h1>{{user.age}}</h1>
<hr>
<h1 style="background-color:greenyellow">这是一道白切鸡!!!!</h1>
</body>
</html>

5.项目重启后访问url

http://127.0.0.1:8000/index/

修改数据库内容

刷新浏览器

django3.xx和4.xx版本连接sqlite数据库

其他内容同上

更改urls.py

from django.contrib import admin
from django.urls import path
from myapp import views

urlpatterns = [
    path("admin/", admin.site.urls),
    path("index/", views.index),
]

项目重启访问

http://127.0.0.1:8000/index

相关推荐
乐茵安全16 分钟前
基于python绘制数据表(上)
java·前端·python
程序员大金19 分钟前
基于python+django+vue的高校成绩管理系统
vue.js·python·django
宸码19 分钟前
【机器学习】【无监督学习——聚类】从零开始掌握聚类分析:探索数据背后的隐藏模式与应用实例
人工智能·python·学习·算法·机器学习·数据挖掘·聚类
程序员黄同学1 小时前
如何使用 Python 实现 UDP 通信?
网络·python·udp
belldeep1 小时前
python:用 sklearn.metrics 评价 K-Means 聚类模型
python·kmeans·sklearn·metrics
橘子海全栈攻城狮1 小时前
[源码+调试+讲解]微信小程序的成都美食分享系统springboot
开发语言·spring boot·后端·微信小程序·小程序·美食
流烟默2 小时前
Python爬虫之使用xpath进行HTML Document文档的解析
爬虫·python·xpath
KevinAha2 小时前
MySQL迁移SQLite 借助PYTHON脚本
python·mysql·sqlite
uhakadotcom2 小时前
杀疯了,90后博士第一次创业,刚成立1年半,融资12亿,估值30亿
后端·算法·架构
麻衣带我去上学2 小时前
SpringCloud启动源码分析
后端·spring·spring cloud