基于Zope教学网站的数据库技术

来源 :电脑学习 | 被引量 : 0次 | 上传用户:yhcguopdf
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:基于Zope借助Plone建立了一个教学网站和一个物理习题库。
  关键词:教据库技术 教学网站 习题库 Zope
  中图分类号:TP393.09 文献标识码:A 文章编号:1002-2422(2008)03-0042-02
  
  1 数据库技术
  
  Zope的对象数据库的设计思想,特别适合于文档管理,知识管理,群件系统等。Plone便是一个基于Zope而设计出的功能异常强大的内容管理系统。内容对象(如文件和文件夹)是Plone的主要对象。运用Plone强大的文档管理和发布功能,可对教学资源进行有效的整合和集成。采用Plone的文件和文件夹对象来组织网络习题库的最大优点是:可对所有习题文件和对应章节目录的文件夹,采用对象编程的思想进行管理。每一习题文件都自动具有ID、作者、创建时间、修改时间及所处的目录位置等属性;每一习题文件都可设置标题、内容描述、使用期限、关键字和相关联的其它习题文件等属性。属性可以继承,下一级文件夹自动继承上一级文件夹的属性。所有这些属性都被自动进行索引,存放在Hone的Portal_catalog中,并可通过管理界面增加新的索引。索引的建立提供了对库中文档的强大查询功能,使得习题库的使用变得极其方便。
  结合Zope的对象数据库和通用的关系型数据库来开发网络物理习题库,可以充分发挥这两种数据库技术的长处。将习题以网页文件的形式存放在Zope/Plone的文档数据库内,借助Plone的直观易用的管理界面,可以非常方便地编辑、修改习题的内容,管理和查询亦非常方便。关系型数据库适宜存放整齐划一的数据格式。可以设计相应字段存放有关习题的信息,如题型、题分、难易、大纲要求等。使用关系型数据库的另一好处是可以充分发挥SQL的强大查询功能。两者之间的连接可以通过在关系型数据库中存放指向习题文件的路径来实现。
  
  2 网络物理习题库建设实例
  
  物理习题库的建设涉及题库结构的设计,习题的网络输入、增加、删除、检索和显示。下面结合Zope的对象数据库和通用的关系型数据库,给出一个具体设计实例。对象数据库方面的工作比较容易:根据物理教科书的章节目录创建相应的文件夹对象;根据习题内容创建相应网页文件对象;然后,通过Hone的管理界面将网页逐一导入对象数据库中即可。关系型数据库采用Gadny,集成在Zope中,操作采用SQL语言。
  
  2.1设计习题库结构
  在Gadfly中建立数据库的工作非常简单,只需在Vat\Gadfly目录下建立一个相应目录即可,如物理习题库,可建一个名为Physics的目录。目录建立后,对物理习题库进行操作产生的文件和数据,如建立的数据表及输入的记录便自动存放在这个目录下。
  
  2.2建立数据库连接
  作为内建的关系型数据库,建立和物理习题库的连接极其简单。在ZMI管理界面,进入Select Type to Add的添加框。从添加列表中选择Z Gadfly Database Connection会转入Gadfly数据库连接对象的添加表单。选择Physics数据源,设定连接的ID(如whk),单击添加按钮,便生成了一个Gadfly数据库连接对象。
  在Gadfly数据库连接对象的设定页面中有:Status、Properties、Test、Browse等标签按钮。在测试页Test中,可以输入SQL语言对数据库进行交互操作,如创建数据表,对数据库记录进行增加、删除、检索等。在浏览页Browse中,可以观看库中的表及表的结构。
  
  2.3创建存放物理习题的数据表
  在设计中,需特别增加指向存放习题内容的网页文件的路径字段,只有这样,才能将关系型数据库和Zope的对象数据库有机地结合起来。例如创建名为Ps表,可在测试页Test中执行以下SOL语句:Create table p8(tx varchar,th varchar,zj yarchar,nr varchar,dispvar-char)
  单击提交按钮Submit Query按钮,就运行这条SQL语句。此处的SQL语句将在Gadfly的Physics数据库中新建一个名为PS的表及相应索引。该表有5个字段:TX、TH、zJ、NR、DISP,分别是物理习题的题型、题号、章节、内容、描述。这儿的NR字段实际存放的是习题的URL地址,即网页文件的路径。要验证的话,可转到Browse浏览页。该页显示了数据库的表和它们的结构。
  
  2.4物理习题的添加和删除
  可通过测试页来添加物理习题记录。一个具体添加物理习题记录的SQL语句如下:insert into p8(tx,th,zjnr,disp)values(填空,1,力的合成,三个共点力的合成共点力的最小合力)
  上述SQL语句在题库中增加了第一条填空题,为输入更多的物理习题,可多次输入相似的SQL语言。需要指出的是,插入的习题内容仅是一个超链接。/wuli/lx/tk/tl是调用文件的路径表达式。由对象ID组成。其中wuli、b1和tk是文件夹对象,t1是一个网页文件对象,存放习题的具体内容。如输入错误,可用delete from p8 where……语句进行删除。
  
  2.5物理习题的查询和显示
  通过Z SQL方法,可显示所有的习题或者符合某些条件的习题。添加z SQL方法的步骤如下:进入ZMI管理界面。从添加列表选择Z SQL Method,打开SQL方法的添加表单。表单中的ID一栏可输入list,Connection ID栏则输入wltk(已建立的用于连接Physics数据库的z GadflyDatabase Connection对象),在SQL语句框中输入如下SQL语言:select * from ps用于查询所有题目。改为select*from ps where……,就可查询满足一定条件的题目。
  
  2.6随机查询的实现
  能否从题库中随机抽取记录是用题库组卷的基础。在Zope中借助Python Script脚本对象和z SQL对象,可轻松实现随机出题的功能。具体步骤如下:先设计一个Python脚本调用上述z SQL方法,在获取题库里的记录后,运用Python的Random模块的Chioce函数,在记录集中随机选择随机记录并返回,最后设计一个页面模板插入脚本返回的结果,以网页形式显示。设计的页面模板主要代码如下:随机抽取习题</titke></head><body><span tahcontent=structure here/random—item>随机题目1</span></body> <br>  语句structure here/random-item调用Python脚本Ran-dom-item,获取脚本返回的记录,Structure用于保证含有HTML标记的内容的正确显示。Random-item的代码如下:import random <br>   <br>  num=random.choice(result),result=context.list() <br>   <br>  return num.context <br>   <br>  3 结束语 <br>   <br>  结合Zope的对象数据库和通用的关系型数据库来开发网络物理习题库,不仅可行,而且功能强大,使用方便。 </div> </section> <!-- 其他文献块 --> <section class="article-other"> <div class="article-other-header" style="color:#2162e4"><span>其他文献</span></div> <div class="article-other-content"> <div class="tit"><a href="/periodical/f50ed364698559fd4daccd32e42cc10a.html" target="_blank" title="火眼金睛"> 火眼金睛 </a></div> <div class="con"> He flies across the sky and towards the stars. 越过辽阔天空,飞向遥远群星。  Look! Here comes Astro Boy, a boy fond of science, on a swan! 看!阿童木,爱科学的好少年,骑着天鹅来了。  Please find ten differences in the two pictures in t </div> <div class="typ"> <div class="typ-nam"> <span>期刊</span> </div> <div class="typ-con"> <span><a href="/tags/%E9%98%BF%E7%AB%A5%E6%9C%A8" target="_blank">阿童木</a></span><span><a href="/tags/%E6%9D%A5%E4%BA%86" target="_blank">来了</a></span><span><a href="/tags/%E5%9C%A8%E8%BF%99" target="_blank">在这</a></span><span><a href="/tags/%E4%BD%A0%E5%9C%A8" target="_blank">你在</a></span><span><a href="/tags/%E5%A4%B4%E5%8F%91" target="_blank">头发</a></span><span><a href="/tags/%E8%84%9A%E8%B6%BE" target="_blank">脚趾</a></span><br /> </div> </div> </div> <div class="article-other-content"> <div class="tit"><a href="/periodical/57d1c2405764a4369d6f0861755776f2.html" target="_blank" title="Just for Fun"> Just for Fun </a></div> <div class="con"> coach  Notes: coach教练    Notes: positive spin 正向旋转  reverse rotation 反向旋转 </div> <div class="typ"> <div class="typ-nam"> <span>期刊</span> </div> <div class="typ-con"> <span><a href="/tags/%E6%95%99%E7%BB%83" target="_blank">教练</a></span><span><a href="/tags/yyqj" target="_blank">yyqj</a></span><span><a href="/tags/qkimages" target="_blank">qkimages</a></span><span><a href="/tags/jpg" target="_blank">jpg</a></span><span><a href="/tags/src" target="_blank">src</a></span><span><a href="/tags/img" target="_blank">img</a></span><br /> </div> </div> </div> <div class="article-other-content"> <div class="tit"><a href="/periodical/e1b94e603e587370515bd07ec7af3fb8.html" target="_blank" title="现代奥运之父——皮埃尔.德.顾拜旦"> 现代奥运之父——皮埃尔.德.顾拜旦 </a></div> <div class="con"> 皮埃尔·德·顾拜旦(Le baron Pierre De Coubertin,1863~1937),是法国著名教育家、国际体育活动家、教育学家和历史学家、现代奥林匹克运动的发起人。1896年至1925年,他曾任国际奥林匹克委员会主席,并设计了奥运会会徽和奥运会会旗 。由于他对奥林匹克不朽的功绩,被誉为现代“奥林匹克之父”。    Pierre de Coubertin was born on Ja </div> <div class="typ"> <div class="typ-nam"> <span>期刊</span> </div> <div class="typ-con"> <span><a href="/tags/%E5%A5%A5%E6%9E%97%E5%8C%B9%E5%85%8B" target="_blank">奥林匹克</a></span><span><a href="/tags/%E5%B8%8C%E8%85%8A" target="_blank">希腊</a></span><span><a href="/tags/%E5%9B%BD%E9%99%85%E5%A5%A5%E5%A7%94%E4%BC%9A" target="_blank">国际奥委会</a></span><span><a href="/tags/%E5%A5%A5%E8%BF%90%E4%BC%9A" target="_blank">奥运会</a></span><span><a href="/tags/%E5%9B%BD%E9%99%85" target="_blank">国际</a></span><span><a href="/tags/%E5%B7%B4%E9%BB%8E" target="_blank">巴黎</a></span><br /> </div> </div> </div> <div class="article-other-content"> <div class="tit"><a href="/periodical/d1fa2bfef2c11b082e4915bfdf4adecb.html" target="_blank" title="Humr and Jokes 幽默与笑话"> Humr and Jokes 幽默与笑话 </a></div> <div class="con"> A fourth-grade teacher was giving her pupils a lesson on logic.   “Here is the situation,” she said. “A man is standing up in a boat in the middle of a river, fishing. He loses his balance, falls in, </div> <div class="typ"> <div class="typ-nam"> <span>期刊</span> </div> <div class="typ-con"> <span><a href="/tags/%E8%99%AB%E5%AD%90" target="_blank">虫子</a></span><span><a href="/tags/%E9%85%92%E7%B2%BE" target="_blank">酒精</a></span><span><a href="/tags/%E8%BF%99%E6%98%AF" target="_blank">这是</a></span><span><a href="/tags/%E8%80%81%E5%B8%88" target="_blank">老师</a></span><span><a href="/tags/%E4%B8%80%E5%8F%AA" target="_blank">一只</a></span><span><a href="/tags/%E6%98%AF%E4%BB%96" target="_blank">是他</a></span><br /> </div> </div> </div> <div class="article-other-content"> <div class="tit"><a href="/periodical/aa59f39608ecea70cac135343c4cf6b2.html" target="_blank" title="The Fastest Father"> The Fastest Father </a></div> <div class="con"> Three boys were bragging (吹牛,自吹) about their fathers.   The first one said, “My father runs so fast that he can shoot(射) an arrow(箭), start running, and get there before the arrow!”  The second one sa </div> <div class="typ"> <div class="typ-nam"> <span>期刊</span> </div> <div class="typ-con"> <span><a href="/tags/%E4%BB%A3%E8%AF%8D" target="_blank">代词</a></span><span><a href="/tags/%E5%90%8D%E8%AF%8D" target="_blank">名词</a></span><span><a href="/tags/%E5%8F%8D%E5%AF%B9%E7%A5%A8" target="_blank">反对票</a></span><span><a href="/tags/%E7%96%91%E9%97%AE%E5%8F%A5" target="_blank">疑问句</a></span><span><a href="/tags/%E6%84%8F%E4%B8%BA" target="_blank">意为</a></span><span><a href="/tags/%E5%89%AF%E8%AF%8D" target="_blank">副词</a></span><br /> </div> </div> </div> <div class="article-other-content"> <div class="tit"><a href="/periodical/477c90164c73cfbfae397cd3a66cede6.html" target="_blank" title="智破凶杀案"> 智破凶杀案 </a></div> <div class="con"> 1. Aunt Gold Pheasant is killed near Village Green Hill. The detective decides the case happened at about 5:30 this morning. 锦鸡大婶被杀死在青山村附近。探长推断案发时间在今晨5点30分左右。     2. Chief Detective Baboon looks a </div> <div class="typ"> <div class="typ-nam"> <span>期刊</span> </div> <div class="typ-con"> <span><a href="/tags/%E9%9D%92%E5%B1%B1" target="_blank">青山</a></span><span><a href="/tags/%E6%8E%A2%E9%95%BF" target="_blank">探长</a></span><span><a href="/tags/%E6%9D%91%E9%87%8C" target="_blank">村里</a></span><span><a href="/tags/%E5%9C%9F%E4%B8%98" target="_blank">土丘</a></span><span><a href="/tags/%E7%8B%92%E7%8B%92" target="_blank">狒狒</a></span><span><a href="/tags/%E9%BB%91%E7%86%8A" target="_blank">黑熊</a></span><br /> </div> </div> </div> <div class="article-other-content"> <div class="tit"><a href="/periodical/1aa2143aa2df608e079025b2ac427b8e.html" target="_blank" title="新目标英语七年级(下) Unit 1 STEP BY STEP随堂通"> 新目标英语七年级(下) Unit 1 STEP BY STEP随堂通 </a></div> <div class="con"> Ⅰ. 根据图片写出下列国家的名称。        Ⅱ. 根据句意和首字母提示完成句中的单词。  1. New York is a c________ in the United States.  2. A________ you from Japan?  3. My pen pal l________ in Tokyo.  4. People from C________ speak Englis </div> <div class="typ"> <div class="typ-nam"> <span>期刊</span> </div> <div class="typ-con"> <span><a href="/tags/%E5%8D%95%E8%AF%8D" target="_blank">单词</a></span><span><a href="/tags/%E5%8D%95%E9%A1%B9" target="_blank">单项</a></span><span><a href="/tags/%E7%BB%99%E6%88%91" target="_blank">给我</a></span><span><a href="/tags/%E5%9B%BD%E5%AE%B6" target="_blank">国家</a></span><span><a href="/tags/%E7%AC%94%E5%8F%8B" target="_blank">笔友</a></span><span><a href="/tags/%E6%9C%80%E5%96%9C%E6%AC%A2" target="_blank">最喜欢</a></span><br /> </div> </div> </div> <div class="article-other-content"> <div class="tit"><a href="/periodical/894a7bec646fd0b969b897cc67a0de32.html" target="_blank" title="多肉植物能嫁接吗?"> 多肉植物能嫁接吗? </a></div> <div class="con"> 研究背景  爷爷喜欢养花,家里阳台上放着各式各样的花花草草,其中他最喜欢的是形态各异的多肉植物。为了得到更多植株,爷爷试着用仙人掌作嫁接砧木,对蟹爪兰、仙人球等进行嫁接,但不知什么原因存活率不高。爷爷有点气馁,我想帮帮他。通过询问教师和查阅相关文献,我发现一种叫6苄氨基腺嘌呤(6-BA)的细胞分裂素可以促进植物愈伤组织生长,提高嫁接成活率。为了进一步研究不同浓度6-BA对嫁接的作用方式,我在教师的 </div> <div class="typ"> <div class="typ-nam"> <span>期刊</span> </div> <div class="typ-con"> <span><a href="/tags/%E6%88%90%E6%B4%BB%E7%8E%87" target="_blank">成活率</a></span><span><a href="/tags/%E6%B5%93%E5%BA%A6" target="_blank">浓度</a></span><span><a href="/tags/%E7%A0%A7%E6%9C%A8" target="_blank">砧木</a></span><span><a href="/tags/%E4%BB%99%E4%BA%BA%E6%8E%8C" target="_blank">仙人掌</a></span><span><a href="/tags/%E7%BB%86%E8%83%9E%E5%88%86%E8%A3%82" target="_blank">细胞分裂</a></span><span><a href="/tags/%E6%8E%A5%E7%A9%97" target="_blank">接穗</a></span><br /> </div> </div> </div> <div class="article-other-content"> <div class="tit"><a href="/periodical/f15cbbdf85823da74b902bf545bf4983.html" target="_blank" title="2014年第5期参考答案"> 2014年第5期参考答案 </a></div> <div class="con"> 【英语阅读理解分类练习参考答案】  应用文: passage 1 1~5 BDADBpassage 2 1~5 CBACB  记叙文: passage 1 1~5 ADABCpassage 2 1~5 CADDA  议论文: passage 1 1~5 BCADC passage 2 1~5 CDCAD  说明文: passage 1 1~5 DCABBpassage 2 1~5 BBDAC    </div> <div class="typ"> <div class="typ-nam"> <span>期刊</span> </div> <div class="typ-con"> <span><a href="/tags/%E5%BA%94%E7%94%A8%E6%96%87" target="_blank">应用文</a></span><span><a href="/tags/%E5%8F%82%E8%80%83%E7%AD%94%E6%A1%88" target="_blank">参考答案</a></span><span><a href="/tags/%E8%A1%A8%E6%A0%BC" target="_blank">表格</a></span><span><a href="/tags/%E8%AF%9D%E9%A2%98%E4%BD%9C%E6%96%87" target="_blank">话题作文</a></span><span><a href="/tags/%E8%AF%B4%E6%98%8E%E6%96%87" target="_blank">说明文</a></span><span><a href="/tags/%E8%AE%B0%E5%8F%99%E6%96%87" target="_blank">记叙文</a></span><br /> </div> </div> </div> <div class="article-other-content"> <div class="tit"><a href="/periodical/ba96994f41885f481325f597e4fe2061.html" target="_blank" title="《中学生英语》与武汉市2008年中考考点珠联璧合 成就经典(一)"> 《中学生英语》与武汉市2008年中考考点珠联璧合 成就经典(一) </a></div> <div class="con"> 《中学生英语》在注重培养和提高学生英语水平能力的同时,也密切关注着各种英语考试,特别是全国各地中考的动态,每年分析中考考点的分布和落点状况,从而在编辑工作中能精确地为初三的读者朋友提供中考英语考试信息。可以毫不夸张地说,每年全国各地中考的考点尽在《中学生英语》掌握之中。   我们通过认真分析和对比,2008年武汉市中考至少50分以上可在《中学生英语》及《步步为营决胜中考》中直接找到答案,很多题目设 </div> <div class="typ"> <div class="typ-nam"> <span>期刊</span> </div> <div class="typ-con"> <span><a href="/tags/%E8%8B%B1%E8%AF%AD" target="_blank">英语</a></span><span><a href="/tags/%E4%B8%AD%E8%80%83" target="_blank">中考</a></span><span><a href="/tags/%E6%AD%A6%E6%B1%89%E5%B8%82" target="_blank">武汉市</a></span><span><a href="/tags/%E4%B8%AD%E5%AD%A6%E7%94%9F" target="_blank">中学生</a></span><span><a href="/tags/%E5%B0%8F%E9%A2%98" target="_blank">小题</a></span><span><a href="/tags/%E5%AD%A6%E4%B8%9A" target="_blank">学业</a></span><br /> </div> </div> </div> </section> </div> </div> <!-- 右侧边栏 --> <div class="col-lg-3 col-md-3 hidden-sm hidden-xs"> <div class="content-right"> <div class="sid"> <div class="tit"> <h3>与本文相关的学术论文</h3> </div> <div class="con3"> <ul> </ul> </div> <!-- <div class="bot"> <a href="#" target="_blank"><button class="btn btn-default btn-block">更 多</button></a> </div> --> </div> <div class="sid-img-ad"> <script src=/d/js/public/new5.js></script> </div> </div> </div> </div> </section> </main> <!-- 页面底部 --> <footer class="public-footer"> <section class="top"> <div class="container"> <div class="row"> <div class="col-xs-120 gongjujianjie">期刊论文基于Zope教学网站的数据库技术发表于2008年3期电脑学习作者李保源 龚建兰,本篇论文的所有权归原作者李保源 龚建兰所有,如果您对本文有版权争议,可与客服联系进行内容授权或下架。 </div> </div> </div> </section> <section class="bottom"> <div class="container friend-link"> <div class="row"> <div class="col-xs-12"> <span class="title">友情链接:</span> <a href="https://www.soolun.com/" target="_blank">搜论网</a> <a href="https://www.soolun.com/" target="_blank">论文下载</a> </div> </div> </div> <div class="container service-link"> <div class="row"> <div class="col-lg-9 col-md-9 col-sm-12 col-xs-12"> <div class="aboutus"> <a href="/about.html">关于我们</a> <a href="/about.html">联系我们</a> <a href="/about.html">广告服务</a> <a href="/about.html">版权声明</a> <a href="/about.html">新手指南</a> <a href="/about.html">网站地图</a> </div> <div class="kefuqq"> 客服qq:184688754 客服qq:184688754 </div> <div class="disclaimer"> <span>声明:本文档内容版权归属内容提供方,如果您对本文有版权争议,可与客服联系进行内容授权或下架</span><span>搜论网</span> © CopyRight 2018-2025 </div> </div> <div class="col-lg-3 col-md-3 col-sm-12 col-xs-12 wechat"> <div class="wechat-item"> <img src="/image/weixin.png" alt="微信客服" > <div class="img-name">微信客服</div> </div> <div class="wechat-item"> <img src="/image/weixin.png" alt="微信服务号"> <div class="img-name">微信服务号</div> </div> </div> </div> </div> </section> </footer> <script src="/js/jquery.min.js"></script> <script src="/js/bootstrap.min.js"></script> <script src="/js/bootstrap-hover-dropdown.min.js"></script> <script src="/js/bootstrap-select.min.js"></script> <script src="/js/js.js?v=1.0"></script> </body> </html>