django框 架的简单使用

1、python创建虚拟环境

使用虚拟环境可以在不同的应该下,安装各自不同版本的模块相互不受影响。应用程序 A 可以拥有自己的 安装了 1.0 版本的虚拟环境,而应用程序 B 则拥有安装了 2.0 版本的另一个虚拟环境。 如果应用程序 B 要求将某个库升级到 3.0 版本,也不会影响应用程序 A 的环境。

1.1创建一个django web项目工作目录,比如下面的django work文件夹

1.2创建虚拟环境

cd 进文件夹,cmd执行命令python -m venv ll_ven,ll_ven是要建的文件名

E:\django work>python -m venv ll_ven

生成的虚拟环境目录结构

1.3激活虚拟环境

使用cmd执行scripts\下的activate激活

2、安装Django

创建完虚拟环境后,虚拟环境隔离的Python环境,比在系统内安装包更实用。它还允许在没有管理员权限的情况下安装包。 在你已创建并激活一个虚拟环境后,输入以下命令:

...\> py -m pip install Django

虚拟环境lib库文件中创建了django5.0的模块

3、创建项目

如果这是你第一次使用 Django 的话,你需要一些初始化设置。也就是说,你需要用一些自动生成的代码配置一个 Django project—— 即一个 Django 项目实例需要的设置项集合,包括数据库配置、Django 配置和应用程序配置。所有命令都需在激活的虚拟环境中运行,不然会提示加载不了django,项目和应用应该放在那里?一、可把应用放在虚拟环境的同级目录、二、或任意文件目录开发过程中把IDE的解释器指向虚拟环境。

打开命令行,cd 到一个你想放置你代码的目录,然后运行以下命令:

...\> django-admin startproject mysite

在当前目录创建项目

在指定目录创建项目

django-admin startproject 项目名 路径,其中路径必需存在,如果不存在会提示目不存先创建目录

4、创建应用

在激活的虚拟环境中,cd进项目目录,其目录中存在manage.py文件

再执行如下命令行:

...\> py manage.py startapp polls

生成如下应用目录

最佳实践把项目放到虚拟环境同级目录下

5、数据库配置(用mssql为例)
现在,打开 mysite/settings.py 。这是个包含了 Django 项目设置的 Python 模块。

通常,这个配置文件使用 SQLite 作为默认数据库。如果你不熟悉数据库,或者只是想尝试下 Django,这是最简单的选择。Python 内置 SQLite,所以你无需安装额外东西来使用它。当你开始一个真正的项目时,你可能更倾向使用一个更具扩展性的数据库,例如 PostgreSQL,避免中途切换数据库这个令人头疼的问题。

如果你想使用其他数据库,你需要安装合适的 database bindings ,然后改变设置文件中 DATABASES 'default' 项目中的一些键值:

ENGINE -- 可选值有 'django.db.backends.sqlite3','django.db.backends.postgresql','django.db.backends.mysql',或 'django.db.backends.oracle'。其它 可用后端。
NAME -- 数据库的名称。如果你使用 SQLite,数据库将是你电脑上的一个文件,在这种情况下,NAME 应该是此文件完整的绝对路径,包括文件名。默认值 BASE_DIR / 'db.sqlite3' 将把数据库文件储存在项目的根目录。
如果你不使用 SQLite,则必须添加一些额外设置,比如 USER 、 PASSWORD 、 HOST 等等。想了解更多数据库设置方面的内容,请看文档:DATABASES 。

DATABASES

默认: {} (空字典)

一个包含所有数据库配置的字典,用于 Django。它是一个嵌套的字典,其内容是将一个数据库别名映射到一个包含单个数据库选项的字典中。

DATABASES 配置必须设置一个 default 数据库;也可以指定任何数量的其他数据库。

最简单的配置文件是使用 SQLite 的单数据库配置。可以通过以下方式进行配置:

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.sqlite3",
        "NAME": "mydatabase",
    }
}

当连接到其他数据库后端时,如 MariaDB、MySQL、Oracle 或 PostgreSQL,将需要额外的连接参数。请参阅下面的 ENGINE 配置,了解如何指定其他数据库类型。这个例子是针对 PostgreSQL:

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.postgresql",
        "NAME": "mydatabase",
        "USER": "mydatabaseuser",
        "PASSWORD": "mypassword",
        "HOST": "127.0.0.1",
        "PORT": "5432",
    }
}

5.1引用django的mssql模块

mssql-django 1.4.2

下载地址:mssql-django · PyPI

PIP安装命令:pip install mssql-django

修改mysite中的setting.py中DATABASES字典

5.2数据库迁移

迁移
迁移是 Django 将你对模型的修改(例如增加一个字段,删除一个模型)应用至数据库架构中的方式。它们被设计的尽可能自动化,但你仍需要知道何时构建和运行迁移,你还需要了解一些常见问题。

命令
以下是几个常用的与迁移交互的命令,即 Django 处理数据库架构的方式:

migrate,负责应用和撤销迁移。
makemigrations,基于模型的修改创建迁移。
sqlmigrate,展示迁移使用的 SQL 语句。
showmigrations,列出项目的迁移和迁移的状态。
你应该将迁移看作是数据库架构的版本控制系统。 makemigrations 负责将模型修改打包进独立的迁移文件中——类似提交修改,而 migrate 负责将其应用至数据库。

每个应用的迁移文件位于该应用的 "migrations" 目录中,他们被设计成应用代码的一部分,与应用代码一起被提交,被发布。你只需在开发机上构建一次,就可以在同事的电脑或测试机上运行同样的迁移而保证结果一致。最后在生产环境运行同样的迁移。

...\> py manage.py migrate

5.2数据库迁移

迁移
迁移是 Django 将你对模型的修改(例如增加一个字段,删除一个模型)应用至数据库架构中的方式。它们被设计的尽可能自动化,但你仍需要知道何时构建和运行迁移,你还需要了解一些常见问题。

命令
以下是几个常用的与迁移交互的命令,即 Django 处理数据库架构的方式:

migrate,负责应用和撤销迁移。
makemigrations,基于模型的修改创建迁移。
sqlmigrate,展示迁移使用的 SQL 语句。
showmigrations,列出项目的迁移和迁移的状态。
你应该将迁移看作是数据库架构的版本控制系统。 makemigrations 负责将模型修改打包进独立的迁移文件中——类似提交修改,而 migrate 负责将其应用至数据库。

每个应用的迁移文件位于该应用的 "migrations" 目录中,他们被设计成应用代码的一部分,与应用代码一起被提交,被发布。你只需在开发机上构建一次,就可以在同事的电脑或测试机上运行同样的迁移而保证结果一致。最后在生产环境运行同样的迁移。

...\> py manage.py migrate

6、django模型定义

6.1、在应用上级项目目录的settings.py中的INSTALLED_APPS = []列表中添加应用

6.2、在应该的models.py中定义class类,一个class对应一个数据,一个属性对应一个数据表字段

6.3、让django基于模型迁移

        执行模块修改迁移

       python manage.py makemigrations xxx应用名称

     执行应用迁移

     python manage.py migrate

   7、Django管理网站

创建超级用户

在激活虚拟环境cmd中cd进项目目录中的manage.py的同级目录下执行以下命令

python manage.py createsuperuser

(ll_ven) G:\learning_log\ll_project>python manage.py createsuperuser
Username (leave blank to use 'administrator'): admin
Email address:
Password:
Password (again):
This password is too short. It must contain at least 8 characters.
This password is too common.
This password is entirely numeric.
Bypass password validation and create user anyway? [y/N]: y
Superuser created successfully.
注意:密码录入时不可见

8、编写模板

创建模板目录

应用目录下新建文件夹templates,在templates里面再新建以应用名命名的文件夹

  • 27
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值