django简单网页(并连接sqlit3数据库)--(一)

切换环境: conda activate planone(给自己看的,读者请忽略)

这里是参考这个老师的视频进行的,不过由于其版本问题所以出现了些问题,以下是我成功运行后的总结

以及django简单网页(并连接sqlit3数据库)–(二)

项目github源码


一.先使用pycharm创建工程

或者使用pycharm直接创建,系统会自动出现django的环境
1.选择新建项目
2.选择django
在这里插入图片描述

运行的时候点击左上角的整体项目运行按键运行
在这里插入图片描述


1.1.setting.py内修改:

ALLOWED_HOSTS = []#为空默认使用本地的回环地址

以下同为setting.py中的语言和时区设置为中国的部分

LANGUAGE_CODE ='zh-Hans'  #原来: 'en-us'

TIME_ZONE = 'Asia/Shanghai'#原来: 'UTC'

以及添加templates文件夹(这个文件夹储存着你自己定义的html文件)加入django的搜索路径

具体是这行

'DIRS': [BASE_DIR + '/templates',],

下方为准确位置


TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [BASE_DIR + '/templates',],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [

                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

1.2.urls.py内修改添加接下来准备链接的接口:

from django.contrib import admin
from django.urls import path
from firstWEB import views
from django.conf.urls import url
urlpatterns = [
    path('admin/', admin.site.urls),
    url(r'^index/', views.index)
]

比起系统自动创建的,这里多加入了这些

from django.conf.urls import url

url(r'^index/', views.index)

参数说明:
‘admin/’ : 你访问的地址
admin.site.urls: 你映射的文件


二.在django工程中创建你的项目

使用以下命令创建firstWEB的文件夹的工程区前为:
在这里插入图片描述

以下为命令行创建自己的django项目下的文件目录,在命令行中使用

#django-admin startproject cs1 #这一步是之前是不靠pycharm进行的工程创建

python manage.py startapp firstWEB

使用后:
在这里插入图片描述

2.1 .views.py内:

这个文件就是我们自定义转接的文件了,也就是之前的 urls.py链接的文件
这样写

from django.http import HttpResponse
from django.shortcuts import render

# Create your views here.
def index(request):
    return render(request, '自定义.html')
    # return HttpResponse('ok')

2.2templates文件夹类添加html

最后再在之前配置的templates文件夹内添加自己写的html文件,这里的名字是自定义.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>自定义测试网页</title>
</head>
<body>
<h1 style="color: red">自定义网页的h1标签测试2</h1>
</body>
</html>

2.3点击左上角运行

并在回环地址后面加上配置的/index
在这里插入图片描述

三.链接数据库

3.1更改setting,py设置

这一步的作用是为了之后能够迁移我们设置的表,进行准备,不然迁移命令找不然项目

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'firstWEB',#新添加,根据自己的app名称添加
]

这一步是设定sqlit3数据库的存储地址,因为之后要创建salit3时随便迁移django自带的表进去.(可以自定义,也可以不用改)

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
        # 'NAME': os.path.join(BASE_DIR, 'cs2.db'), #修改生成数据库的地址
    }
}

3.2迁移django自带的表

在命令行中使用命令

python manage.py migrate

出现下面则说明创建成功


Operations to perform:
  Apply all migrations: admin, auth, contenttypes, firstWEB, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK

此时可以在,你之前setting中设置的sqlit3文件存储路径找到创建的(django默认为项目根目录下的db.sqlite3)

我这里使用了默认和自定义两种如下图
在这里插入图片描述

3.3pycharm中点击设置链接得到的sqlit

在这里插入图片描述
在这里插入图片描述
然后选择:
Date source -> sqlite

然后检查测试驱动是否已经安装成功,如果不成功则无法进行test Connection,之后也无法刷新.(不同版本的pycharm的驱动提示安装位置不一样,多看看)
在这里插入图片描述

添加后点击刷新即可看到django官方提供的表
在这里插入图片描述

3.4打开app下面的models.py进行创建表

这里是根据视频来的,就是这个

from django.db import models
from django.db import models
# Create your models here.db.sqlite3

#这里类似于表的描述文件
class cal(models.Model):
    value_a = models.CharField(max_length= 10) #这个字符串存储的数据量为10
    value_b = models.FloatField(max_length= 10) #浮点数的长度
    result = models.CharField(max_length= 10)

3.4开始迁移表

这一步使用下面的命令将我们在models.py内定义的表的结构进行到migrations文件夹内

python manage.py makemigrations

或者:如果有多个app的时候记得带上app名称的参数(也就是之前我们在setting.py中设置的)

python manage.py makemigrations firstWEB

当看到以下输出说明成功:

(planone) K:\django_cs>python manage.py makemigrations firstWEB
Migrations for 'firstWEB':
  firstWEB\migrations\0002_auto_20210420_1731.py
    - Create model cal
    - Delete model Video

在使用makemigrations命令迁移改动数据到migration的文件夹保存后我们再使用以下migrate命令把这些改动作用到数据库内部

python manage.py migrate

但刷新在sqlit3中观察到你的文件名与你定义的数据库表的类组成的表的时候,就说明成功连接上数据库了如下图
在这里插入图片描述

### 回答1: Django连接SQLite3数据库的步骤如下: 1. 在settings.py文件中配置数据库信息,包括数据库类型、数据库名称、用户名、密码、主机地址等。 2. 在项目的根目录下创建一个名为db.sqlite3SQLite3数据库文件。 3. 在models.py文件中定义数据模型,包括表名、字段名、字段类型等。 4. 在views.py文件中编写视图函数,通过ORM操作数据库,实现数据的增删改查等操作。 5. 在urls.py文件中配置URL路由,将请求映射到相应的视图函数。 6. 运行Django项目,访问相应的URL,即可实现对SQLite3数据库的操作。 以上就是Django连接SQLite3数据库的基本步骤。 ### 回答2: Django一个非常流行的Python Web框架,它提供了种灵活而强大的方式来开发Web应用程序。在Django中,使用数据库是非常常见的,因此,连接数据库一个非常重要的话题。 SQLite3Django的默认数据库引擎之,这意味着如果您不指定任何其他数据库选项,则Django使用SQLite3存储数据。SQLite3一个嵌入式数据库引擎,它支持大多数标准SQL功能,因此它可以很好地满足大多数Web应用程序的需求。 连接SQLite3数据库的第步是安装数据库引擎。在Django中,使用SQLite3非常简单,因为它已经包含在Python中。如果您已经安装了Python,则可以开始使用SQLite3。 要使用SQLite3,您需要确保在Django的设置(settings.py)文件中设置了DATABASES字典。DATABASES字典是用于配置数据库的主要方式,它定义了数据库引擎,名称,用户名称和密码等选项。 以下是一个示例DATABASES字典,它用于连接SQLite3数据库: DATABASES = { &#39;default&#39;: { &#39;ENGINE&#39;: &#39;django.db.backends.sqlite3&#39;, &#39;NAME&#39;: &#39;mydatabase&#39;, } } 在这个例子中,我们设置default字典作为默认数据库,ENGINE选项指定了我们要使用数据库引擎(即SQLite3),而NAME选项则指定了数据库的名称。这里我们使用一个名为mydatabase的数据库,您可以根据自己的需要修改这些选项。 旦DATABASES字典被设置,您就可以开始使用Django ORM(对象关系映射)来操作数据库了。ORM是种将Python对象映射到数据库表中的技术,它使得操作数据库变得非常直观和容易。 例如,要在Django中创建一个新的模型(即定义一个新的数据库表),只需要创建一个新的Python继承自django.db.models.Model。以下是一个示例模型: from django.db import models class Book(models.Model): title = models.CharField(max_length=100) author = models.CharField(max_length=100) pub_date = models.DateField() 在这个示例模型中,我们定义了一个名为Book的Python类,它包含了三个字段:title,author和pub_date。这三个字段将映射到数据库表中的三个列。 现在我们已经定义了一个模型,接下来可以使用Django的管理器来将数据插入到数据库中了。以下是一个例子: from myapp.models import Book from datetime import date book = Book(title=&#39;The Great Gatsby&#39;, author=&#39;F. Scott Fitzgerald&#39;, pub_date=date(1925, 4, 10)) book.save() 在这个例子中,我们导入了名为Book的模型,创建了一个新的Book对象。我们设置了几个字段的值,然后调用save()方法将该对象保存到数据库中。 总之,连接SQLite3数据库非常简单,只需在Django的设置中设置DATABASES字典,就可以开始使用Django ORM来操作数据库了。使用Django ORM,您可以轻松创建新的模型、查询数据和更新数据,使得开发Web应用程序变得非常容易和直观。 ### 回答3Django作为款高效的Python Web框架,在开发过程中经常需要使用数据库。其中,sqlite3Django默认支持的数据库,通过Django连接sqlite3数据库也比较简单。下面是具体的步骤: 1. 创建Django项目 首先,需要创建一个Django项目。可以使用以下命令创建: ``` django-admin startproject project_name ``` 2. 配置连接sqlite3数据库 进入项目目录,在settings.py文件中可以找到已经定义好的DATABASES配置,可以根据需要进行更改。默认的sqlite3数据库配置如下: ``` DATABASES = { &#39;default&#39;: { &#39;ENGINE&#39;: &#39;django.db.backends.sqlite3&#39;, &#39;NAME&#39;: BASE_DIR / &#39;db.sqlite3&#39;, } } ``` 其中,&#39;NAME&#39;选项表示sqlite3数据库文件的路径,它默认在项目根目录下创建了db.sqlite3文件,也可以更改为自定义的路径。其他选项暂时不需要更改。 3. 创建数据库表格 连接数据库的配置完成后,就可以使用Django提供的ORM(对象关系映射)功能来创建数据库表格了。在Django中,可以使用模型(model)来定义表格,它们位于应用程序(app)中的models.py文件中。 例如,我们在一个名为&#39;blog&#39;的应用中,定义一个名为&#39;Article&#39;的模型来表示文章: ```python from django.db import models class Article(models.Model): title = models.CharField(max_length=100) content = models.TextField() pub_time = models.DateTimeField(auto_now_add=True) ``` 在创建完模型后,需要执行以下命令来生成数据库表格: ``` python manage.py migrate ``` 这条命令会创建一个名为&#39;django_migrations&#39;的表格,用于记录迁移信息。同时,也会自动创建一个名为&#39;blog_article&#39;的表格,用于存放文章数据。 4. 操作数据库 在完成以上步骤后,就可以使用ORM来对数据库进行增删改查操作了。例如,可以使用以下代码来创建篇文章: ```python from blog.models import Article new_article = Article(title=&#39;My first article&#39;, content=&#39;Hello, Django!&#39;, pub_time=&#39;2022-01-01 00:00:00&#39;) new_article.save() ``` 这个例子中,我们导入了&#39;Article&#39;模型,创建了一个新的&#39;article&#39;对象,再调用该对象的&#39;save&#39;方法就可以将数据保存到数据库中。 除了创建数据,ORM还支持多种查询操作,例如全表查询、条件查询、排序查询等,具体可以参考Django官方文档。 综上所述,Django连接sqlite3数据库非常简单,只需要通过修改配置文件与定义模型来完成。在使用ORM进行操作时,也无需编写SQL语句,非常方便。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员进化不脱发!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值