使用XForms和Ruby on Rails开发小型门诊管理系统,第4部分 - 编程入门网
=
"<Patients xmlns:xf=\"http://www.w3.org/2002/xforms\"
xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"
xmlns:p=\"http://developerworks.ibm.com/patient\"
xmlns:ev=\"http://www.w3.org/2001/xml-events\">" %>
<% for pat in @patient %>
<%= "<Info DbId=\"" + pat.id.to_s +
"\" ViewEditLinkDoc=\"\" ViewEditLinkTri=\"\">" %>
<% doc = REXML::Document.new(pat.information) %>
<%= doc.root.elements["LastName"].to_s %>
<%= "</Info>" %>
<% end %>
<%= "</Patients>" %>
需要注意的是,该视图和 grab 视图一样,首 先将 Content-Type 头部设置为 “text/xml” 类型,这样 Mongrel 和 Firefox 就知道如何 处理它了。然后打开 Patients 标签并设置名称空间。有趣的是 for 循环:数据库中的每位患者都遍历 一次,在 XML 文章中生成对应的一组 <Info>...</Info> 标签。Info 标签有三个属性: DbId — 患者在数据库中对应的 ID。 ViewEditLinkDoc — 这个局部变量包 含打开 doctorPatient 表单显示患者信息的链接。 ViewEditLinkTri — 类似于 ViewEditLinkDoc,这也是个局部变量,在 triagePatient 表单中显示患者信息。 显示 Info 起 始标签之后,从患者 XML 记录中检索病人的姓氏,就像在列表视图中检索一样(如 清单 4 所示)。结 束标签 </Info> 最后把患者记录存入 XML。患者全部遍历之后,for 循环执行结束,写上 </Patients> 标签完成 XML。 使用XForms和Ruby on Rails开发小型门诊管理系统,第4部分(7)时间:2011-11-29 ibm Tyler Anderson请注意,医生控制器中没有对应的 graball 方法。代码如清 单 6 所示。 清单 6. 医生控制器中的 graball 方法。 def graball @patient = Patient.find_by_sql("select * from patients"); end 不需要根据 ID 等唯一标识符去查找,只要一条 SQL 语句要求返回所有的患者。这就是为 清单 5 中的 graball 视图抓取所有患者的方法。 下面开始编写患者查找表单。 患者查找 XForm 这是本系列教程中的最后一个 XForm!有了这个表单之后,医生和护士很快就能按照姓氏找 到病人。创建一个新的 XForm(lookupPatient.xhtml)保存到 public 目录下,其代码如清单 7 所示。 清单 7. lookupPatient 表单 <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xf="http://www.w3.org/2002/xforms" xmlns:ev="http://www.w3.org/2001/xml-events"> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> <title>Patient Lookup</title> <xf:model id="patientModel"> <xf:instance xmlns="" id="searchLastName"> <search> <LastName/> </search> </xf:instance> <xf:instance xmlns="&q |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |