Django基础入门05

Day05 Django模型

1.     Django对各种数据库提供了很好的支持,为这些数据库提供了统一调用的API,MySQL是Web 应用中最常用的数据库,接下来以MySql为例进行介绍。

2.     安装mysql驱动  参见https://www.cnblogs.com/hwtmhj/p/6746151.html

1) 下载安装成功Mysql

2) 进入目录D:\Python36下打开命令行输入pip3 install pymysql


3) 以管理员身份打开 CMD窗口,输入net start mysql 启动数据库

4) 接下来用代码实现MySQL和Python的连接:

在setting文件中找到数据库的配置代码,Django工程中。

数据库一般默认的SQLite数据库,如下所示:

  DATABASES = {  

    'default': {  

        'ENGINE': 'django.db.backends.sqlite3',  

       'NAME': 'mydatabase',  

   }  

 } 

修改代码如下:

DATABASES = {  

 'default': {  

 'ENGINE': 'django.db.backends.mysql',  

 'NAME': 'newssystem',  ##指定的数据库名

 'USER': 'root',   ##数据库登陆的用户名,mysql一般是root 

'PASSWORD': '',  ##我的密码是空

'HOST': '127.0.0.1',## 由于一般的数据库都是C/S结构的,所以得指定数据库服务器的位置,我们一般数据库服务器和客户端都是在一台主机上面,所以一般默认都填127.0.0.1 /localhost 

'PORT': '3306', 数据库服务器端口,mysql默认为3306 

  }

}

5)HOST和PORT都可以不填,使用默认的配置,但是如果你有更改默认配置的话,就需要填入更改后的。

现在需要在配置文件目录下面D:\Python36\Lib\site-packages\Django-1.11.11-py3.6.egg\django\conf的__init__.py 文件中写入连接的代码即可,如下图所示:

import pymysql

pymysql.install_as_MySQLdb()

db=pymysql.connect("localhost","root","","newssystem")

cursor=db.cursor()

cursor.execute("SELECTVERSION()")

data=cursor.fetchone()

print("Databaseversion : %s" % data)

db.close()

6)完成后回到工程下开启Django服务

表示连接成功

 

3. 定义模型

创建APP

Django规定如果要是使用模型,必须创建一个app

1)


2)修改 TestModel/models.py 文件,代码如下:

# models.py

from django.db importmodels

classTest(models.Model):

name= models.CharField(max_length=20)

以上的类名代表数据库表名,且继承了models.Model

类里边的字段代表数据表中的字段(name)

数据类型则由CharField(Varchar)、DateField(datetime)

max_length  参数限定长度

3)接下来在HelloWorld目录下找到setting.py  找到INSTALLED——APPS

修改代码如下:

INSTALLED_APPS = (

    'django.contrib.admin',

    'django.contrib.auth',

    'django.contrib.contenttypes',

    'django.contrib.sessions',

    'django.contrib.messages',

    'django.contrib.staticfiles',

    'TestModel',               # 添加此项

)

5)  在命令行中运行

               python manage.py migrate   # 创建表结构

             python manage.pymakemigrations TestModel  # 让 Django 知道我们在我们的模型有一些变更

 python manage.py migrate TestModel   # 创建表结构

6) 表名组成结构为:应用名_类名(如:TestModel_test)。

7) 打开数据库IDE可发现

注意:尽管我们没有在models给表设置主键,但是Django会自动添加一个id作为主键。

添加数据

1)我们在HelloWorld目录中添加testdb.py文件:

添加数据需要先创建对象,然后再执行save函数,相当于SQL中的INSERT:

# -*-coding:utf-8 -*-

from django.httpimport HttpResponse

from  TsetModel.models import Test

#数据库操作

def testdb(request)

  test1=Test(name=’runoob’)

test1.save()

returnHttpResponse(“<p>数据添加成功!</p>”)

2) 修改urls.py

fromdjango.conf.urls import *

from. import view,testdb

 urlpatterns = [

 url(r'^hello$', view.hello),

 url(r'^testdb$', testdb.testdb),

]

3)访问http://127.0.0.1:8000/testdb

显示


获取数据

更新数据

 

删除数据


 

### Django 基础入门教程 Django 是一个功能强大且高效的 Web 框架,能够帮助开发者快速构建可扩展的 Web 应用程序[^1]。以下是关于 Django 基础入门的知识点和步骤。 #### 1. 环境准备 在开始学习 Django 之前,确保已经安装了 Python 和虚拟环境工具(如 `venv`)。创建并激活虚拟环境后,使用以下命令安装 Django: ```bash pip install django ``` #### 2. 创建 Django 项目 使用 Django 提供的命令行工具创建一个新的项目: ```bash django-admin startproject myproject ``` 这将生成一个名为 `myproject` 的目录,其中包含项目的初始文件结构。 #### 3. 配置 `settings.py` 在 `settings.py` 文件中,确保 `INSTALLED_APPS` 包含 `django.contrib.staticfiles`,这是处理静态文件所必需的模块[^4]。 #### 4. 创建 Django 应用 在一个 Django 项目中,应用是核心组件。使用以下命令创建一个新的应用: ```bash python manage.py startapp news ``` 这将生成一个名为 `news` 的应用目录。 #### 5. 配置 URL 路由 在项目的主 `urls.py` 文件中,关联新创建的应用的路由。代码如下: ```python from django.contrib import admin from django.urls import path, include, re_path urlpatterns = [ path('admin/', admin.site.urls), re_path(r'^news/', include('news.urls')), ] ``` 上述代码将 `news` 应用的路由包含到主项目中[^3]。 #### 6. 创建应用的 `urls.py` 在 `news` 应用目录下创建一个 `urls.py` 文件,并定义该应用的路由规则。例如: ```python from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), ] ``` #### 7. 创建视图函数 在 `news` 应用的 `views.py` 文件中定义视图函数。例如: ```python from django.http import HttpResponse def index(request): return HttpResponse("Hello, world!") ``` #### 8. 运行开发服务器 启动 Django 内置的开发服务器以测试应用是否正常运行: ```bash python manage.py runserver ``` 访问浏览器中的 `http://127.0.0.1:8000/news/`,应该能看到 "Hello, world!" 的输出。 #### 9. 使用模板系统 Django 提供了一个强大的模板系统。在 `news` 应用目录下创建一个 `templates` 文件夹,并在其中创建 HTML 文件。例如: ```html <!-- templates/index.html --> <!DOCTYPE html> <html> <head> <title>News App</title> </head> <body> <h1>Welcome to the News App!</h1> </body> </html> ``` 然后在视图函数中返回该模板: ```python from django.shortcuts import render def index(request): return render(request, 'index.html') ``` #### 10. 静态文件管理 在 `settings.py` 中配置静态文件路径,以便正确加载 CSS、JavaScript 等资源。例如: ```python STATIC_URL = '/static/' STATICFILES_DIRS = [BASE_DIR / "static"] ``` --- ### 注意事项 - 在 Django 项目中,`__init__.py` 文件用于标识目录为 Python 包,有助于组织代码结构[^2]。 - 学习 Django 时,建议从基础概念入手,逐步深入到高级功能。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值