基于django等联合消防实战02
接着上次的来说,上次我们完成了基本的要求和开发情况,这次是开始加代码啦
首先是对项目的分析,在上文中我也提到了要分成四大块来进行完成,我是这么想的,我们的主战场是django,所以我先写的django上代码
from django.db import models
class fire(models.Model):
id = models.AutoField(db_column='ID', primary_key=True) # 编号
build_id = models.IntegerField(db_column='Build_ID') # 建筑物编号
build_name = models.CharField(db_column='Build_Name', max_length=255) # 建筑物名称
fire_chief = models.CharField(db_column='Fire_Chief', max_length=255) # 起火建筑物消防负责人
fire_brigade = models.CharField(db_column='Fire_Brigade', max_length=255) # 消防队
fire_floor = models.CharField(db_column='Fire_Floor', max_length=255) # 起火楼层
fire_rating = models.CharField(db_column='Fire_Rating', max_length=255) # 火灾等级
time = models.DateTimeField(auto_now=True) # 时间
class Meta:
managed = True
db_table = 'fire'
这里其实就是把我们的表单创建好,其次是要把主要现实的界面给建好,最后是给地图留出来路径
完成这些后就是socket 的编写了这里我们调用了pymysql 用了他来查询我们的数据库,同时我们要再连接数据库之前完成一些逻辑判断,因为要求是输入的七位数字要进行分割所以我先完成了这个要求,这是我自己写的大佬勿喷,初学者代码敲的少,接下来上代码
a = int(int(nums) / 1000)
b = int(int(nums) % 1000 / 10)
c = int(nums) % 10
这是对输入来的七位数字进行分割提取,当然还有对输入来的数据校验,当输入的不是数字我们提示他一下,当输入是数字但不是七位的我们也对他进行提示。(由于代码实在简陋我都不好意思放出来,有兴趣的可以私聊我,来看一看这简陋的代码,后期我会完善这个代码的。)
完成和数据库的交互,接下来就是百度地图的调用(当然你用其他的api也是可以的,这时候我们就去百度地图api认证拿到我们自己的key,复制密钥,找到我们需要的地图这时候就是展现实力的时候啦--->ctrl + c---> ctrl + v 粘贴到我们django中的HTML里,再给他匹配上路由运行一下就完事啦
下一篇文章我来给你们展示一下完成的效果