django mysql 教程_django+mysql的简单开发教程

本教程介绍了如何在 Django 1.11 框架下,结合 Python 2.7 和 MySQL 创建项目,存储用户信息到数据库并展示。内容包括:设置 Django 使用 MySQL 数据库,创建数据模型,定义插入和列出用户数据的视图,创建 HTML 模板,以及配置 URL 路由。通过这个教程,你可以实现简单的用户数据存储和查询展示功能。
摘要由CSDN通过智能技术生成

工具及版本:

Django 1.11+Python 2.7+mysql+Pycharm

介绍:

本例完成django静态开发,将用户信息存至mysql数据库,并可展示出来所有用户数据。主要包括以下四部分:

1. 新建项目

a) 在pycharm内新建django项目userproject:

130203706_1_2018041406171981

b)运行开发服务器测试项目

130203706_2_20180414061719347

130203706_3_20180414061719581

130203706_4_20180414061719722

2. 新建应用

a)新建应用app_user(Run manage.py startapp app_user)

130203706_5_20180414061719847

b)配置mysql数据库,在项目工程文件的setting文件中修改:在databases下将sqlite3配置注释,添加新的配置说明,其中Name为已建好的数据库名,其他按个人mysql数据库相关属性配置即可。(django项目默认数据库为sqlite3,若直接使用则不必另行配置)

130203706_6_2018041406172035

3. 开始应用

1. 数据表建立:用户名及密码定义(models.py)

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

from __future__ import unicode_literals

from django.db import models

# Create your models here.

class message(models.Model):

username = models.CharField(max_length=20)

password = models.CharField(max_length=15)1

2

3

4

5

6

7

8

9

10

11

在settings文件内INSTALLED_APPS添加新建app名称,其他的可以注释掉(本例中未注释)

130203706_7_20180414061720222

依次运行以下指令在数据库内建立表,django将默认生成app名_class名的数据表,本例中应生成app_user_message表。

130203706_8_20180414061720347

*注:1:若运行第一条指令提示:Unknown command,请将以上命令更改为对应版本下的命令,如“manage.py validate及 manage.py syncdb)

2:若提示“App ‘app_user’ could not be found.“请检查是否已在settings中添加app并保存。*

使用命令行查看数据库:可见已生成空的数据表app_user_message,其中id为系统自动添加的。(注:testdata数据库下的其他表为未注释掉的默认应用生成的,为使用方便可在上一步中注释或删除默认应用)

130203706_9_20180414061720503

2. views.py部分

定义insert函数:

def insert(request):

if request.method == "POST":

username = request.POST.get("username", None)

password = request.POST.get("password", None)

models.message.objects.create(username=username, password=password)

models.message.save()

return render_to_response('insert.html')1

2

3

4

5

6

7

定义list函数:

def list(request):

people_list = models.message.objects.all()

c = Context({"people_list":people_list})

return render_to_response("showuser.html",c)1

2

3

4

注:Insert接收网页的post数据并将传入的用户名、密码数据存储到数据库中;List将数据库内存储的数据读出并展示出来。其中引用库函数如下:

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

from __future__ import unicode_literals

from app_user import models

from django.shortcuts import render_to_response

from django.template import Context1

2

3

4

5

6

3.templates部分

新建html文件

insert.html

用户登录

1

2

3

4

5

6

7

8

9

10

11

12

13

14

showuser.html

Title

信息展示

用户名密码

{% for line in people_list %}

{{line.username}}{{line.password}}

{% endfor %}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

4. 测试应用

1.配置urls.py:保留原配置,并添加url路径

from django.conf.urls import url

from django.contrib import admin

from app_user import views

urlpatterns = [

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

url(r'^show/',views.list),

url(r'^admin/', admin.site.urls),

]1

2

3

4

5

6

7

8

9

2.浏览器测试

130203706_10_20180414061720597

点击提交发现403错误,在settings文件内进行修改即可。

# SECURITY WARNING: don't run with debug turned on in production!

DEBUG = False

ALLOWED_HOSTS = ['*']1

2

3

4

MIDDLEWARE = [

'django.middleware.security.SecurityMiddleware',

'django.contrib.sessions.middleware.SessionMiddleware',

'django.middleware.common.CommonMiddleware',

#'django.middleware.csrf.CsrfViewMiddleware',

'django.contrib.auth.middleware.AuthenticationMiddleware',

'django.contrib.messages.middleware.MessageMiddleware',

'django.middleware.clickjacking.XFrameOptionsMiddleware',

]1

2

3

4

5

6

7

8

9

再次输入提交并在数据库内进行数据查询

130203706_11_20180414061720753

信息展示测试:

130203706_12_20180414061720878

至此,本项目已算基本完成,实现了简单的数据存储查询展示功能。

(对于数据库命令行操作不熟悉的可以使用图形化界面管理数据库,更直观也更方便)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值