快速业务通道

使用XForms和Ruby on Rails开发小型门诊管理系统,第3部分 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14
ditPatient 窗体,ID 附加在 URL 后面(因此 grab 视图知道从数据库读取哪一条记录并返回 XForm)。注意下方添加新患者的链接。单击该链接将打 开本系列第 2 部分创建的表单。

该表单如图 1 所示。

图 1. 患者列表

使用XForms和Ruby on Rails开发小型门诊管理系统,第3部分 - 编程入门网

使用XForms和Ruby on Rails开发小型门诊管理系统,第3部分(5)

时间:2011-11-29 ibm Tyler Anderson

单击链接就会看到包 含已有数据的 editPatient 表单,如图 2 所示。

图 2. 在 editPatient 表单查看已有的数据

使用XForms和Ruby on Rails开发小型门诊管理系统,第3部分 - 编程入门网

在这 里可以根据需要编辑数据。要注意,提交该表单的时候,按照 清单 1 的定义,执行的是 kiosk/update 脚本而不是 kiosk/create 脚本。还有 URL 中的 id 变量,清单 2 中的 grab 控制器依靠它才知道从数 据库获取哪个 id。

选择 Submit Information 按钮之前,应该修改 kiosk 控制器的 update 方 法。

Kiosk update 控制器

需要修改 update 控制器来处理 XForms 提交数据,存储到数 据库中替代原来的 XML 数据。修改后的 kiosk 控制器如清单 4 所示。

清单 4. 修改 kiosk 控 制器的 update 方法

 def update
doc = REXML::Document.new("<Info></Info>")
params[:Info].each_pair do |key,value|
if (key.index('':'') == nil) #removes
el = REXML::Element.new key
el.add_text value
doc.root.add el
else
doc.root.add_attribute key,value
end
end
id = @request.env["HTTP_REFERER"].split(''='')[1]
@patient = Patient.find(id)
@patient.information = doc
@patient.update_attributes(params[:patient])
redirect_to :action => ''list''
end

使用XForms和Ruby on Rails开发小型门诊管理系统,第3部分(6)

时间:2011-11-29 ibm Tyler Anderson

注意和 create 控制器的相似性。差别在于如何使用引用 URL 检索原有的患者信息。首先 ,该方法创建了 XForms 提交数据的 XML 文档,然后从数据库检索已有的患者,用新数据替换已有的 XML 数据并保存到数据库。

这样就行了!对用户界面略加修改就能大大加强应用程序的功能,真 是令人吃惊。现在可以查看和更新已有的患者记录了。

护士审批表单

护士审批表单(triagePatient.xhtml)让护士从完全不同的视图(triage)编辑和审查患者输入的数 据。triagePatient 表单允许护士使用 Submit Information 按钮编辑患者信息,使用 Approve 按钮编 辑和批准患者信息。但是创建该表单之前,需要为患者表添加一个新的字段。

修改患者表

患者模式中新增一个 approve 字段,用于确定哪些信息已经经过审核批准,哪些还没有。要修改患者模 式请打开 DB2 Control Center,找到 Patients 表,如图 3 所示。

图 3. 修改患者模式

使用XForms和Ruby on Rails开发小型门诊管理系统,第3部分 - 编程入门网

右键 单击 Patient 表,像上图那样单击 Alter。在打开的窗口中单击 Add,输入新的字段信息,如图 4 所示 。

图 4. 添加 approved 字段

使用XForms和Ruby on Rails开发小型门诊管理系统,第3部分 - 编程入门网

使用XForms和Ruby on Rails开发小型门诊管理系统,第3部分(7)

时间:2011-11-29 ibm Tyler Anderson

请注意字段名、数 据类型、默认值和 Nullable。连续单击 OK。Control Center 将通知您修改已经成功,可以看到修改后 的表模式,如图 5 所示。

图 5. 修改后的患者模式

使用XForms和Ruby on Rails开发小型门诊管理系统,第3部分 - 编程入门网

如果使用 DB2 Control Center,实际上不需要使用命令行工具。

现在可以创建 Triage 视图了。

Triage 视图和控制器

需要把 triage 视图、控制器以及护士 XForm 的患者模型联系起来。创建新的视图 和控制器,请输入清单 5 所示的代码。

清单 5. 创建 triage 视图和控制器

ruby 

script/generate scaffold patient triage
exists app/controllers/
exists app/helpers/
create app/views/triage
exists app/views/layouts/
exists test/functiona

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号