python图书管理系统增删改查语句_图书管理系统-单表的增删改查

配置环境

settings.py文件

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',

]

配置数据库

DATABASES ={'default': {'ENGINE': 'django.db.backends.mysql', #使用mysql数据库

'NAME': 'bom', #库名

'HOST': '127.0.0.1', #IP

'PORT': 3306, #端口

'USER': 'root', #用户

'PASSWORD': '123456' #密码

}

}

配置静态文件

STATIC_URL = '/static/'STATICFILES_DIRS=[

os.path.join(BASE_DIR,'static')

]

在settings.py同级文件中的__init__.py中指定django使用pymysql连接数据库

importpymysql

pymysql.install_as_MySQLdb()

在app01下的models.py下创建表

from django.db importmodels#Create your models here.

classBms(models.Model):

pid= models.AutoField(primary_key=True)#更改默认id的名字

name = models.CharField(max_length=20,unique=True) #varcher(20)

在Termial中执行命名,迁移数据库

python manage.py makemigrations

python manage.py migrate

点击Pycharm 右侧Datebase连接数据库,并插入数据,别忘了提交

创建static文件,并将bootstarap放到plugins文件夹下

在templates下创建index.html文件

index.html文件代码

出版社

float: none;

display: block;

margin-left: auto;

margin-right: auto;

padding-top: 100px;

}

出版社

序号名称操作

{% for i in all_data %}

{#循环从all_data:对象列表 中取得数据 i 为对象#}

{{ i.pk }}{#pk 表示主键 和pid一样#}{{ i.name }}

添加

修改

删除

{% endfor %}

View Code

页面效果

views.py文件

from django.shortcuts importrender, redirectfrom app01 importmodels#展示出版社列表

defindex(repuest):#从数据库中取到数据,通过pid进行排序,默认升序

all_data = models.Bms.objects.all().order_by('pid')#返回一个包含数据的页面

return render(repuest, 'index.html', {'all_data': all_data})#添加出版社

defadd_bms(request):#区分请求方式

if request.method == 'POST':#获取到提交的数据,form 中 name中的值

new_name = request.POST.get('new_name','').strip()if notnew_name:#提交的是空的字符串 new_name为空时,not new_name 会执行

return render(request,'add_bms.html',{'err_msg':'不能为空','new_name':new_name})#判断新的名字在数据库中是否存在,获取的是对象列表

obj_list = models.Bms.objects.filter(name=new_name)#如果数据存在,返回错误提示

ifobj_list:return render(request, 'add_bms.html', {'err_msg': '数据以存在','new_name':new_name})#将数据插入到数据库中 ,如果插入多个值,逗号分隔,ret为对象

ret = models.Bms.objects.create(name=new_name)#跳转到显示页面

return redirect('/index/')#返回一个包含form表单的页面

return render(request, 'add_bms.html')

View Code

添加出版社

名称:{{ err_msg }}

提交

View Code

urls.py文件

"""from django.conf.urls import url

from django.contrib import admin

from app01 import views

urlpatterns = [

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

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

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

]

View Code

编辑出版社

名称:{{ err_msg }}

提交

View Code

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值