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

在上一篇文章中我们已经完成了增删改查中查询和删除的功能,本篇则是要实现的是如何增加和改变。

下面我们就来实现如何修改内容。

首先我们在html页面的操作中添加一项功能,修改。

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

我们只需要在创建表的HTML里的操作栏中添加一个超链接,暂时不给它跳转的路径,这样打开网页,你就会发现,表格的操作栏中会出现修改一项啦。

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

一定要给把id给带上,不然电脑不知道你要修改的是表格中的哪一行列表。

接着我们就可以在views视图中编辑代码了。

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


 首先我们老调重弹,判断一下它的提交方式。

如果它通过GET提交,我们就渲染修改页面,可是我并没有写修改页面,所以我在templates的doecuser里写了一个修改页面。

修改页面我并没有怎么写,直接把add的表格搬过来美化了一下。

            

<div class="main">
   <form action='' method="post">
              {% csrf_token %}
   <div class=" tab">
      <table border="1" cellspacing="" cellpadding="" class="tab1">
         <tr class='tr1'>
            <td>文档编号</td>
                <td >文档名称</td>
                <td >文档摘要</td>
                <td>上传人</td>
                <td >上传日期</td>
         </tr>
         <tr class="tr2">
            <td>{{eodc.id}}</td>
            <td><input type="text" name="doc_name"  value="{{eodc.doc_name}}"></td>
            <td><input type="text" name="doc_main"  value="{{eodc.doc_main }}"></td>
                      <td><input type="text" name="up_name"  value="{{ eodc.up_name}}"></td>
                      <td>{{ eodc.up_time}}</td>
         </tr>
      </table>
              <input type="submit"  value="提交" align="center">
   </div>
   </form>
</div>

再接着判断如果它是通过POST提交过来的我们就需要修改这一行列表。

通过filter过滤匹配id,然后用update将通过POST方式获取到的对象,变更原来存储于数据库中的数据以此来达到修改的目的。

做完这一步,接着开始配置路径:

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

这样就可以实现修改的功能了。

等等!我们忘记了一样至关重要的事情。

还没有给修改的超链接配置链接。

只需要在 herf后面跟上 /user/update/.

虽然我在这里皮了一下,但是还是要郑重的告诫大家皮几万是要坐牢的,千万不要忽略细节哟。

至此,整个修改的方法就写完啦。

我们开始下一项:如何添加。

其实它的思路是和修改差不多的。

我们只需要使用crate()方法。

要知道,数据库里是没有insert方法的,创建表格只能使用crate()方法。

事实上,使用update()方法也是可行的,我在这里使用的是create()方法。

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


依葫芦画瓢,也创建一个HTML文件。

<tr class="tr2">
   <td><input type="text" value="{{ classify.doc_name}}" name="doc_name"></td>
   <td><input type="text" value="{{ classify.doc_main }}" name="doc_main"></td>
   <td><input type="text" value="{{ classify.up_name }}" name="up_name"></td>
   <td><input type="text" value="{{ classify.up_time }}" name="uptime"></td>
   <td>
       input type="text" value="{{ master.name }}" name="mname">
   </td>
</tr>

我在这里只是添加文档中的数据,并没有写如何添加下拉列表。


urls中的配置如下:

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

最后,在第一个HTML文件中添加超链接<a herf='/user/insert/'>添加<a>.

至于它放在哪儿,我就又皮一下,不告诉你,自己琢磨吧。

下一篇,将是如何实现分页。