Django_项目:实现设备管理系统

需求:
1、手机分类:ios、安卓,特性:指纹识别、系统、屏幕尺寸、是否全面屏
2、选择后查询出当前库中手机记录;
3、查出未借出手机记录后可进行借出操作,填写借出人姓名,并记录当前日期
4、可查询出已借出手机记录:日期、借出人名称
5、已借出记录可进行归还操作,记录归还人名称,日期

一、创建项目
1、进入站点目录Python\Python36\Scripts输入:
django-admin startproject equipments
二、启动项目
1、站点目录输入:
python manage runserver
2、构建Django 后端:
python manage.py makemigrations
python manage.py migrate
3、创建超级用户:
python manage.py createsuperuser
username:admin
password:
4、登录后端:http://127.0.0.1:8000/admin/
5、后端汉化,进入equipments/setting.py

image.png

三、创建应用
1、equipments目录下输入:
python manage.py startapp phoneinfo
2、将应用加入到equipment项目中,在settings.py添加
image.png

四、更改数据库连接
Django默认连接的是SQLite,修改为本地安装的MySQL,修改settings.py文件:
image.png

五、创建数据库
1、phoneinfo/models.py文件中创建数据库,本次设计了两张表:Phoneinfo用来记录手机信息,Borrow_record_info用来记录借还数据。
class Phoneinfo(models.Model):
mobile_name = models.CharField('手机名称',max_length=64)
ios_or_andriod = (
(0,'ios'),
(1,'andriod')
)
phone_type = models.IntegerField(choices=ios_or_andriod,default=1)
resolution_rate = models.CharField('手机分辨率',max_length=20)
system_name = models.CharField('系统型号', max_length=10)
is_comprehensive_screen = models.BooleanField('是否为全面屏')
comprehensive_screen = (
(0,'否'),
(1,'是')
)
is_comprehensive_screen = models.IntegerField(choices=comprehensive_screen,default=0)
finger_print = (
(0,'否'),
(1,'是')
)
is_finger_print = models.IntegerField(choices=finger_print,default=0)
borrow_status = (
(0,'未借出'),
(1,'已借出')
)
status = models.IntegerField(choices=borrow_status,default=0)
pic_url = models.CharField('图片上传路径', max_length=200, blank=True)
create_time = models.DateTimeField('创建时间',auto_now=True)
equip_status = (
(0,'可用'),
(1,'不可用')
)
yn = models.IntegerField(choices=equip_status,default=0)

class Meta:
    verbose_name = '手机信息'
    verbose_name_plural = '手机信息'

def __str__(self):
    return self.mobile_name

class Borrow_record_info(models.Model):
borrow_mobile = models.ForeignKey('phoneinfo.phoneinfo',on_delete=models.CASCADE,)
borrow_person = models.CharField('借出人',max_length=20)
borrow_department = models.CharField('借出人部门',max_length=20,null=True)
borrow_time = models.DateTimeField('借出时间', auto_now=True)
back_time = models.CharField('归还时间',max_length=40,null=True,blank=True)
status = (
(0,'已归还'),
(1,'未归还')
)
borrow_status = models.IntegerField(choices = status,default=1)
borrow_remark = models.CharField('备注',max_length=20,null=True)
class Meta:
verbose_name = '借还记录'
verbose_name_plural = '借还记录'

def __str__(self):
    return self.borrow_person

2、迁移同步数据库和表结构
python manage.py makemigrations
python manage.py migrate
六、创建视图,在views.py文件中添加:
def login(request):
if request.POST:
username = request.POST.get('username')
password = request.POST.get('password')
user = auth.authenticate(username=username,password=password)
if user is not None and user.is_active:
auth.login(request,user)
request.session['user'] = username
response = HttpResponseRedirect('/home/')
return response
else:
return render(request,'login.html',{'error':'用户名 或 密码错误!'})
return render(request,'login.html')
七、创建映射,在urls.py文件中添加:
from phoneinfo import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^login/',views.login),
]
八、创建模板,在phoneinfo下创建templates文件夹,并在该文件夹下创建login.html文件:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>手机设备管理平台</title>
<style>body{text-align:center}</style>
</head>
<body>
<div>
<font size="1">
<h1>手机设备管理平台</h1>
</font>
<form method="post" action="/login/">
{% csrf_token %}

<a>  用户名:</a> <input name="username" type="username" placeholder="test">


<a>  密   码:</a> <input name="password" type="password" placeholder="123456">

<a style="color:red">{{ error }}

  <button style="width:240px;height:28px;" id="submit" type="submit">登录</button>
</form>
</div>
</body>
</html>

后续添加页面、功能等方式:创建视图--创建映射--创建模板
具体代码实现见GitHub:
https://github.com/JessyX001/equipments_manage.git

管理页面:


image.png

添加设备:


image.png

修改设备:
image.png

删除设备:


image.png

借出记录:
image.png

添加借出记录:


image.png

归还借出:


image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,108评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,699评论 1 296
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,812评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,236评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,583评论 3 288
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,739评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,957评论 2 315
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,704评论 0 204
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,447评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,643评论 2 249
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,133评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,486评论 3 256
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,151评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,108评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,889评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,782评论 2 277
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,681评论 2 272

推荐阅读更多精彩内容