缓存和页面显示,这是最后一个部分了,真没想到一个连载竟然用了几个小时。累了...
外部链接和跟踪
如果想对外部网站资源进行链接和跟踪,可以使用如下的helper方法:
Ruby代码
external_link_to(text,url)
external_link_to(image_tag(image),url)
这两种生成链接的方法(一种是文字链接,一种是图形链接)都可以对链接情况进行日志记录。如果将environment.rb文件中的$USE_EXTERNAL_LINK_POPUPS 参数设置为真,外链接将一弹出框形式存在。下面的参数可以传递给Url
Ruby代码
:new_window=>true or false -- determines if link appears in new browser window (defaults to true)
:show_only_if_link=>true or false -- determines if image or text is shown if no URL was supplied (defaults to false)
:show_link_icon=>true or false -- determines if the external icon image is shown after the link (defaults to true for text links and false for image links)
对于图形,可以传递如下参数:
Ruby代码
:alt=>'value' -- alt tag is set with the value passed
:title=>'value' -- title tag is set with the value passed
对于当前来说,还没有提供对外部链接跟踪情况的报表。所有的链接跟踪情况通过 "external_link_logs" 数据库进行存储。
部分缓存机制
部分缓存功能需要配置文件设置,才能启用(config/production.rb)并且要打开存储机制
如下:
Ruby代码
config.cache_store = :mem_cache_store, '10.0.0.1:11211', '10.0.0.2:11211'
缓存设置如下:
Ruby代码
config.action_controller.perform_caching = true
静态页面首先将被缓存。主页面的缓存周期是一个小时。或者通过 config/environment.rb文件的 $CACHE_CLEAR_IN_HOURS 参数定义
头文件和导航栏的缓存通过动态的部分缓存,当改变的时候进行清除。
搜索功能的缓存,依赖与检索类序,语言,和是否有审查的状态,进行缓存。
当用户用管理员或内容合伙人登录的时候,页面将不进行缓存。
进行缓存的项目如下:
Ruby代码
- taxon_id
- language
- expertise level
- vetted or all information
- default taxonomic browser
- curator for page
页面缓存的过期,可以通过手动或服务器定时调用如下地址实现: They only work if called
Ruby代码
localhost:3000/expire_all # expire all non-species pages
localhost:3000/expire_taxon/TAXON_ID # expire specified taxon ID (and it's ancestors)
localhost:3000/expire_taxa/?taxa_ids=ID1,ID2,ID3 # will expire a list of taxon IDs (and their unique ancestors) specified in the querystring (or post) parameter "taxa_ids" (separate by commas)
localhost:3000/clear_caches # expire all fragment caches (if supported by data store mechanism)
对于应用程序内容,可以通过如下方法调用实现。 Ruby代码
expire_all # expire all non-species pages
expire_taxon(taxon_ID) # expire specified taxon id and ancestors (unless :expire_ancestors=>false is set)
expire_taxa(taxon_ID_array)# expire specified array of taxon ID and unique ancestors (unless :expire_ancestors=>false is set)
clear_all_caches # expire all fragment caches (everything!)
页面显示插件ASSETT PACKAGER
(CSS and JS)
asset_packager 插件的详细介绍, 可以参考 http://synthesis.sbecker.net/pages/asset_packager
如果你想在自己项目中引入一个javascript文件,那么你需要编辑"config/asset_packager.yml"文件 并且需要按照加载的顺序放置。项目通过一个Rake任务对Css和Js文件管理和组合需要指出的是,在config文件中Js文件的顺序要和组合时的顺序一致。
当更新Js/Css代码后,要通过rake 任务进行更新。
如下:
Ruby代码
rake asset:packager:build_all
在产品模式下,这个rake命令是做为capistrano部署命令的一部分。
做为测试目的,你也可以强制在config/environments/development.rb" 或 "config/environment.rb"中增加
Ruby代码
Synthesis::AssetPackage.merge_environments = ["development", "production"]
控制台属性
1. 通过ConceptID看属性
Ruby代码
t=TaxonConcept.find(101)
2. 查询等级
Ruby代码
he_all=t.hierarchy_entries OR he=t.entry (for the default)
3. 查询相关等级
Ruby代码
h=he_all[0].hierarchy # OR h=he.hierarcy
h.label
h.agent.full_name
h.agent.hompage
h.agent.logo_cache_url
4. 查询相关等级的agents
Ruby代码
agents=he[0].agents # OR agents=he.agents
agents.each {|agent| puts agent.full_name + " " + agent.homepage + " " + agent.logo_cache_url}
文档
项目并不是通过svn repo来产生文档。所以,用户需要如下得到:
Ruby代码
template=`allison --path` rake doc:reapp
写在最后:
终于写完了,还是比较有收获的。
<!-- 分页 -->
分享到:
相关推荐
利用MATLAB-ROBOTICS-TOOLBOX建立一个四自由度和一个六自由度机械臂,根据要求能够在演示和非演示下画出工作空间,随机点画最小最大角度的工作空间,以及更具目标要求利用For循环描点 利用MATLAB-ROBOTICS-TOOLBOX...
建立一个网站其实不是很多人想象的那么复杂,很多人在几天之内就能建立自己的个人网站...本文将通过简明扼要的方式告诉你如何建立一个自己的网站。
题目:建立一个名为Student的类,该类有以下几个私有成员变量:学生姓名、学号、性别、年龄。还有以下两个成员函数:一个用于初始化学生姓名、学号、性别和年龄的构造函数,一个用于输出学生信息的函数。编写一个...
基于MATLAB-ROBOTICS-TOOLBOX建立一个四自由度和一个六自由度机械臂(根据要求能够在演示和非演示下画出工作空间,随机点画最小最大角度的工作空间,以及更具目标要求利用For循环描点).zip 基于MATLAB-ROBOTICS-...
本项目“Ruby-在一个简单的UI中管理您的RubyOnRails模型关系和迁移”旨在提供一个直观的用户界面,以便开发者能够更加方便地管理和操作Rails应用中的数据模型、关系和数据库迁移。 在Rails中,数据模型(Model)...
RubyonRails九日学习计划(含相关软件及书籍)时间 内容 目的 第一天 学习oracle 基本工具掌握 plsql ,sql语言,范式,索引,数据库安全,数据备份,导入导出。 熟练掌握SQL语言 第二天 1. ruby 语言历史和...
SIMULINK是一个用来对动态系统进行建模、仿真和分析的软件包。它可以快速建立控制系统的模型,进行仿真和调试。在本实验中,我们将使用SIMULINK建立典型环节的仿真模型,并观察其单位阶跃响应波形。 实验步骤: 1....
本文档就是讲解利用开源程序建站的核心秘密,抛开各种不适用的套话,直击核心要点,让大家在3个小时内零基础也能建立一个高大上、美观的网站。(当然“3小时”的概念也是因人而异的,若你能在3天内学会也是可以的)
使用系统调用pipe()建立一条管道线;两个子进程P1和P2分别向管道各写一句话: Message from Child l! Message from Child 2! 父进程从管道中读出来自于两个子进程的信息,显示在屏幕上。 要求父进程先接收子...
内容概要:本文针对燃烧优化参数调整实验复杂和耗时的特点,提出了一种基于工况优选的燃烧优化典型样本库的建立方法。通过移动最小二乘法(MLS)对电厂历史数据进行拟合,筛选出典型工况,并利用三次样条插值法建立...
所谓典型局域网就是指由一台具备三层交换功能的核心交换机接几台分支交换机。文中给出了三台分支交换机与核心交换机相连,并建立VLAN的实例。
2. 创建一个新结点,并将其插入到要插入的位置。 3. 将新结点的前驱结点和后继结点的指针修改为指向相应的结点。 四、线索二叉树的恢复线索 线索二叉树的恢复线索可以通过遍历二叉树并将每个结点的空指针域修改为...
教师档案管理系统是一个典型的高校档案管理系统,其开发过程主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。而对于后者则要求其...
把关键字、算符、界符称为语言固有...为此设置三个全程量:SYM,ID,NUM 。 SYM:存放每个单词的类别,为内部编码的表示形式。 ID:存放用户所定义的标识符的值,即标识符字符串的机内表示。 NUM:存放用户定义的数。
根据给定的信息,本文将详细解析四杆机构运动仿真的相关知识点,包括四杆机构的基本概念、运动学方程的建立、仿真算法的设计及其在实际工程中的应用。 ### 四杆机构简介 四杆机构是一种典型的平面连杆机构,由四个...
这些CA又有一个或多个上级CA,直至追溯到一个被操作系统或浏览器广泛信任的根CA。当验证证书时,系统会检查这个证书链,确保每个中间CA都被其上一级CA签发,直到到达根CA。如果链条中的任何环节缺失,就会出现上述...
本资料包包含了一个自定义的Matlab函数,以及一些演示实例,旨在帮助用户理解和应用四阶龙格库塔法。 四阶龙格库塔法的核心思想是通过多次近似计算,逐步逼近微分方程的真实解。它由四个步骤组成,每个步骤都涉及到...
课程由弹性计算一线专家团队倾力打造,以理论讲解和实际操作结合的方式,从省钱窍门、使用误区等角度切入,覆盖背后的技术原理和架构方案,在带您找到弹性计算最佳打开方式的同时,让您建立起完善的知识体系。
•new:建立一个新的简单文件系统; •sfs:打开一个简单文件系统; •exit:退出打开的简单文件系统; •mkdir:创建子目录; •rmdir:删除子目录; •ls:显示目录; •cd:更改当前目录; •create:创建文件; ...