Tutorial:轻松上手Tanglab数据库

本文面向Tanglab及其它小型团队的工作人员

本文在一定程度上参考了MDN Web Docs,本系列教程旨在简化教学流程,并提供小型团队数据库搭建的思路。若希望更为全面地掌握Django及其它数据库知识,应阅读官方文档。

本系列教程所需的预备知识(prerequisite)仅包括浏览器使用和基本数据逻辑


1 背景介绍

  • 以PKU-CCME为例,大部分课题组都具有数十人的团队规模,随着时间的积累和人员的流动,信息整理、查询成为团队管理的一大痛点。
  • 传统的excel虽然门槛低,但维护性差、结构简单;x-mol等平台虽然提供了相关的功能,但功能固定、跳转步骤多,且难以保证长期的安全性和稳定性。
  • Django 是一个高级的 Python 网络框架,可以快速网站——功能完备、内容泛用、安全可靠、扩展性强、维护性好、灵活通用,适合小型团队的信息管理。
  • 在Tanglab中,我们利用django搭建试剂耗材数据库,通过在线查询、录入、登出功能记录试剂位置及其使用状况,并结合条码打印机、扫码器实现线上线下互通(O2O, Online To Offline)
    • 此外,也可以通过django实现人员信息管理、课题组网站搭建等功能,此处便不详述

默认的Django网页界面


2 Tanglab数据库使用方法

对一般用户,常用的使用场景包括:

  • 登陆(需要账号和密码)
  • 录入(需要相关信息,打印凭条)
  • 查询(只需关键字)
  • 登出(凭条扫码登出,或者搜索后手动登出)

下面一一介绍上述使用场景

2.1 登陆管理页面

初次登录前,需要联系管理员开设账号,并设置staff status = True

登陆界面

登陆后,会看到首页展示了主要的数据库内容,其结构如下:

  • Reagent (试剂,表示一类试剂)
    • Chinese Name (中文名,只有一个)
    • English Name (英文名,只有一个)
    • Tags (标签,可有多个)
    • Source (货源,也就是厂家,只有一个)
    • Reagent Instance (试剂实例,可有多个,与每瓶试剂一一对应)
      • Location (摆放位置,只有一个)
      • Principals (负责人,只有一个)

主页中的CATALOG包含了所有数据库

2.2 录入信息

通常情况下,点击Reagent Instances边上的绿色加号“+”,就可以录入信息。

  • 对于关联的数据库,可以用搜索功能搜索现有数据库是否有匹配的条目,避免重复添加
  • 如果关联数据库中无相关条目,可以按绿色加号“+”,在弹窗中录入信息
  • 对于Tags数据库,可以左右拖动,增加多个Tag
  • 录入信息应尽量做到准确可靠
  • 完成后记录Reagent Instance ID, 在标签打印界面打印并粘贴

录入信息界面、弹窗界面和搜索功能

2.3 检索信息

  • 通常情况下,可以在左上角搜索框内搜索相关信息,模式为”__icontain”,即只要包含相关字符即可
  • 右侧的筛选栏提供了信息的筛选功能,可以进一步细化条件

搜索信息界面

2.4 登出信息

  • 样品用完后,应修改对应的reagents instance状态为“Run out”
  • 也可以使用扫码枪扫码或者在登出界面输入ID,自动登出(请注意确认页面上显示的ID与登出对象一致)

修改对象状态


3 建立数据库

本项目完全参考MDN Web DocsDjango官方文档,项目部署于内网服务器。从零开始建立服务器到实现应用约需1-3天,基本不需要python基础,欢迎感兴趣的同学自行尝试。

如需数据多种格式的导入和导出,也可以依赖django-import-export插件简单实现。

打赏
  • Copyrights © 2021-2024 Yida Jiang
  • 访问人数: | 浏览次数:

请我喝杯奶茶吧~

支付宝
微信