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

相关推荐
m0_495496417 分钟前
mysql处理复杂SQL性能_InnoDB优化器与MyISAM差异
jvm·数据库·python
forEverPlume1 小时前
PHP怎么使用Eloquent Attribute Composition属性组合_Laravel通过组合构建复杂属性【方法】
jvm·数据库·python
Aleeeeex1 小时前
RAG 那点事:从 8 份企业文档到能用的问答系统,全过程拆给你看
人工智能·python·ai编程
uzong1 小时前
我研读了 500 个 Spring Boot 生产级代码库,90% 都犯了这 7 个致命错误
后端
2301_809204701 小时前
mysql在docker容器中如何部署_利用docker-compose快速启动
jvm·数据库·python
xiaobaoyu2 小时前
ssm知识点梳理
后端
2301_800976932 小时前
正则表达式
开发语言·python·正则表达式
IT_陈寒2 小时前
Vite的public文件夹放静态资源?这坑我替你踩了
前端·人工智能·后端
浮游本尊2 小时前
合同同步逻辑
后端
码界奇点2 小时前
基于Python的新浪微博数据爬虫系统设计与实现
数据库·爬虫·python·毕业设计·新浪微博·源代码管理