如何用Django实现简易电子文档管理系统

如何用Django实现简易电子文档管理系统

这是一个简易的电子文档管理系统,可以实现通过下拉列表获取相应的文档资料,也可以删除文档。


首先我们需要在models.py中写两个类


如何用Django实现简易电子文档管理系统


一个是下拉列表中需要的内容,另一个则是form表单里需要的数据。

接着我们需要进行数据迁移。

如果我们直接进行数据迁移的话会报错,因为我们还没有在setting中配置。

如何用Django实现简易电子文档管理系统

事实上,还有POST和PORT,因为在本机上进行操作,所以可以不用填写。

实际上setting中我们还需要配置如下几个:

如何用Django实现简易电子文档管理系统

我们使用哪个APP,就在INSTALLED_APPS下添加APP的名字。


如何用Django实现简易电子文档管理系统

还需要在在TEMPLATES里的DIRS中输入

'DIRS': [os.path.join(BASE_DIR,'templates')],
这样我们就可以使用templates啦。

我们现在可以开始数据库迁移了,通过快捷键ctrl+Alt+R打开manage.py 

创建一个在APP下的migrations的数据库

相当于 在该app下建立 migrations目录,并记录下你所有的关于modes.py的改动,比如0001_initial.py, 但是这个改动还没有作用到数据库文件

如何用Django实现简易电子文档管理系统


所以得数据迁移。

在manage.py中输入 migrate doecuser  0001。

这样我们就可以在数据库里看到我们创建的表啦。


我们 接着得在页面上写一个表,首先在templates下创立一个叫doceuser的文件夹,在里面建立一个HTML文件。

<!DOCTYPE html>
<html>
   <head>
      <meta charset="utf-8" />
      <title></title>
   <style type="text/css">
      *{margin: 0;,padding:0;}
      .main{width: 600px;height: 400px;margin: 50px auto ;}
      /*.Select{width: 300px;background: yellowgreen;}*/
      .Select1{margin: 20px auto ;width: 100px;height: 20px;}
      .Select1 select{height: 22px;}
      .tab1{width: 600px;}
      .tr1{height: 30px;background:  brown;}
      .tr2{height: 30px;}
   </style>
   </head>
   <body>
      <div class="main">
         <form action='' method="post">
                {% csrf_token %}
         <div class="Select">
            <div class="Select1">
                    <select name="option"  >
                  <option value="0">全部</option>
                  <option  value="{{ foo.id }}">{{ foo.name }}</option>
                    <input type="submit" name="" id="" value="提交" />
               </select>
            </div>
         </div>

         <div class=" tab">
            <table border="1" cellspacing="" cellpadding="" class="tab1">
               <tr class='tr1'>
                  <td>文档编号</td>
                      <td >文档名称</td>
                      <td >文档摘要</td>
                      <td>上传人</td>
                      <td >上传日期</td>
                      <td>操作</td>
               </tr>
               <tr class="tr2">
                  <td>{{k.id}}</td>
                  <td>{{ k.doc_name}}</td>
                  <td>{{ k.doc_main }}</td>
                  <td>{{ k.up_name }}</td>
                  <td>{{ k.up_time }}</td>
                        <td><a href="">删除</a></td>
               </tr >                 

            </table>
         </div>

         </form>
      </div>
   </body>
</html>

在数据库里随便填写一些数据

如何用Django实现简易电子文档管理系统


如何用Django实现简易电子文档管理系统



写好了表格,我们需要将表格和数据库连接。

我们需要在views.py里这样写:


如何用Django实现简易电子文档管理系统

接着需要配置urls.py。

如何用Django实现简易电子文档管理系统


我们可以在doec的urls.py中给它一个叫  user  的命名空间

如何用Django实现简易电子文档管理系统

这里记得在decouser 的urls.py配置时记得先写      app_name='user' 

如何用Django实现简易电子文档管理系统


单单这样是不能看到我们表格里的内容的,还需要修改一下HTML里的代码

通过循环遍历得到master.name和master.id。即数据库里的第一张表ID和名字

如何用Django实现简易电子文档管理系统


如何用Django实现简易电子文档管理系统


这样我们就可以在页面中看到这张表格啦。

如何用Django实现简易电子文档管理系统

接着再实现通过提交下拉列表中的选项,列表自动显示出相应的文档。

我们在页面中显示出的画面是通过GET方式提交的,因此我们对它进行判断如果它是同POST提交的话,提交全部,就显示全部,提交JAVA就只显示文档名称是JAVA的。

如何用Django实现简易电子文档管理系统


做到这里我们就可以同过下拉列表查询我们想要的文档啦。


至此,只剩下最后一步,如何删除。

如何用Django实现简易电子文档管理系统

通过删除过滤的id,返回重定向,就完成了删除。

emmmm,其实是骗你的。

a标签的链接咱还没写呢,urls.py也没配置呢。



如何用Django实现简易电子文档管理系统如何用Django实现简易电子文档管理系统

一定要在dele后面添加删除的ID不然电脑不知道删除啥。