beast学习笔记——5,_head.html.erb
参考:
1,
(1)代码
<title>
<%=h @current_site && current_site.name || I18n.t('txt.beast_title', :default => 'Altered Beast') %>
<%= " - #{h @page_title}" if @page_title %>
</title>
(2)表示
【1】current_site从何而来?
找application_controller.rb,得知它来自被include的AuthenticatedSystem中。再看authenticated_system.rb,发现代码:
# Inclusion hook to make #current_user and #logged_in?
# available as ActionView helper methods.
def self.included(base)
base.send :helper_method, :current_user, :logged_in?, :current_site, :admin?, :moderator_of? if base.respond_to? :helper_method
end
其中,self.included这个函式表示:模块AuthenticatedSystem被include时执行。因为是在application_controller.rb中include的AuthenticatedSystem,所以,每个controller执行时,都会执行self.included方法,所以,每个ActionView都可以使用相应的信息。
其中,send 方法指定方法名称,并调用某个对象的方法。
【2】I18n.t('txt.beast_title', :default => 'Altered Beast')
default方法,表示:当txt.beast_title这个key在yml中找不到键值时,显示“Altered Beast”。
【3】@page_title从何而来??未知??????
2、
(1)代码
<%= stylesheet_link_tag 'display' %>
<%= stylesheet_link_tag 'captcha' %>
(2)表示
表示调用了css样式文件,默认存储位置为:\public\stylesheets下
3
(1)代码
<%= javascript_include_tag "prototype", "effects", "lowpro", "time", "application", :cache => "beast" %>
(2)表示
【1】表示调用了js文件,默认存储位置为:\public\javascripts下
【2】cache表示什么?我们可以把多个js文件存储在一个文件中进行缓存,以减少HTTP连接数。此缓存只有在设置ActionController::Base.perform_caching为true时才起作用。perform_caching在config\environments文件夹下的development.rb、production.rb、test.rb文件中,默认情况下,development、test下为false,production下为true。development中的代码为:
config.action_controller.perform_caching = false。
具体的区别如下:
javascript_include_tag :all, :cache => true # when ActionController::Base.perform_caching is false => <script type="text/javascript" src="/javascripts/prototype.js"></script> <script type="text/javascript" src="/javascripts/effects.js"></script> ... <script type="text/javascript" src="/javascripts/application.js"></script> <script type="text/javascript" src="/javascripts/shop.js"></script> <script type="text/javascript" src="/javascripts/checkout.js"></script> javascript_include_tag :all, :cache => true # when ActionController::Base.perform_caching is true => <script type="text/javascript" src="/javascripts/all.js"></script>
javascript_include_tag "prototype", "cart", "checkout", :cache => "shop" # when ActionController::Base.perform_caching is false => <script type="text/javascript" src="/javascripts/prototype.js"></script> <script type="text/javascript" src="/javascripts/cart.js"></script> <script type="text/javascript" src="/javascripts/checkout.js"></script>javascript_include_tag "prototype", "cart", "checkout", :cache => "shop" # when ActionController::Base.perform_caching is true => <script type="text/javascript" src="/javascripts/shop.js"></script>
4(1)
代码
<% unless @feed_icons.blank? -%>
<% @feed_icons.each do |feed| -%>
<%= auto_discovery_link_tag :atom, feed[:url], :title => "Subscribe to '#{feed[:title]}'" %>
<% end -%>
<% end -%>
(2)表示
【1】@feed_icons从何而来?来自helper方法feed_icon_tag,在文件application_helper.rb中
【2】auto_discovery_link_tag,生成一个link标签使浏览器可以使用RSS或ATOM(ATMO可以理解为是对RSS的完善)订阅。通过查看源码,可以发现链接到的控制器为post。
实例:
auto_discovery_link_tag(:rss, {:controller => "news", :action => "feed"}) # => <link rel="alternate" type="application/rss+xml" title="RSS" href="http://www.currenthost.com/news/feed" />
5
(1)代码
<link rel="search" type="application/opensearchdescription+xml" href="http://<%= request.host_with_port %>/open_search.xml" />
(2)表示
但是,beast并没有open_search.xml啊??????
6
(1)代码
<%= link_to_function I18n.t('txt.search', :default => 'Search'), "#", :href => root_path, :id => 'search-link' %>
(2)表示
link_to_function,会生成一个附有onclick事件的链接,在事件结束后return false(虽然点击该链接的时候不会跳转页面.但是滚动条会往上滚,解决的办法是返回一个false)。上述代码会生成:
<a href="/" id="search-link" onclick="#; return false;">Search</a>
其他例子:
link_to_function "Greeting", "alert('Hello world!')"
Produces:
<a onclick="alert('Hello world!'); return false;" href="#">Greeting</a>
7
(1)代码
<%= link_to I18n.t('txt.signup', :default => 'Signup'), signup_path(:to => CGI.escape(request.request_uri)) %>
(2)表示
上述代码会生成:
首先,了解一下CGI.escape的作用,它用于处理URL中的特殊字符
其次,了解一下模版view的运行环境:控制器中的所有实例变量;通过访问子方法访问控制器中的flash、headers、params、request、response、session对象;通过controller属性可以访问当前控制器;通过base_path属性可以访问当前模板的根路径。
8、
(1)代码
<% name = (site = @current_site || Site.first) && site.name %>
<h1><%= link_to name || I18n.t('txt.beast_title', :default => 'Altered Beast'), root_path %>
(2)表示
暂时的理解,设置变量name并赋值,再建立Beast名称的链接。
分享到:
相关推荐
5. **Beast.php**:很可能是一个包含了名为 Beast 的 PHP 类,可能是解码器的核心部分。 6. **TB.php**:可能是一个辅助类或者与 Beast 类相关的工具,TB 可能是 "Template Beast" 或者其他含义。 7. **TB....
《PHP源码加密模块——深入理解php-beast_liexusong.tar.gz》 在Web开发领域,PHP作为一种开源、跨平台的脚本语言,因其简洁、高效的特点被广泛应用。然而,随着互联网安全问题日益凸显,如何保护PHP源码不被轻易...
4. 修改php.ini配置文件,添加或启用`extension=beast.dll`行。 5. 重启你的Web服务器(如Apache或IIS),使配置更改生效。 6. 最后,你可以通过运行`php -m`命令检查BEAST扩展是否成功加载,或者在PHP代码中使用`...
beast_training_web.github.io
根据给定的信息,“Beauty_and_the_Beast.pdf”这个文件似乎并不是关于《美女与野兽》的故事或电影,而是借用了“美与兽”的概念来探讨人类的独特性和成就。标题和描述均未提供具体线索,但从标签“善与恶”以及部分...
### beAst音频小组内部教程知识点汇总 #### 一、国语音轨的来源 国语配音音轨,简称国语音轨,是音轨的一种。音轨通常包括原声音轨、配音音轨(包括国语音轨)、字幕文件等。本文主要讲述了国语音轨的两大来源: ...
php7.3.4 window的php-beast.dll,php-beast项目,文件加密,可联系我获取更高的php版本扩展dll
信息安全_数据安全_IPv666_–_Address_of_the_Beast 安全评级 安全运营 威胁检测 安全风险 APT
根据提供的文档信息,我们可以总结出以下相关知识点: ### 一、AppleCare Protection Plan 概述 **AppleCare Protection Plan** 是苹果公司推出的一种延长保修服务计划,为用户提供超过标准保修期的服务和支持。...
5. 配置编译选项:通常可以通过简单的configure命令来实现。需要注意的是,如果在编译过程中遇到bison.exe工具缺失的提示,则需要将其所在目录添加到系统的环境变量中,然后重新执行configure命令。 6. 编译PHP:...
ubuntu18、20测试通过。 可以在顶上任务栏显示各种资源使用情况,比如cpu、内存、网速、硬盘io。 可以用sudo dpkg -i 文件名.deb来安装,也可以直接双击安装。 基于python开发的,有兴趣可以自己修改里面代码来实现...
【标题】"Beast-Super-Signal_super_indicator_mt4indicator_mt4_beastsupersi" 指的...最后,持续学习和实践是提升交易技巧的关键,而"BEAST SUPER SIGNAL"仅是交易者工具箱中的一种工具,不应被视为确保盈利的保证。
**BEAST v1.8.2 - 贝叶斯进化分析工具详解** **一、BEAST简介** BEAST(Bayesian Evolutionary Analysis Sampling Trees)是一款广泛应用在分子进化研究中的软件,版本为v1.8.2。它利用贝叶斯统计方法来估计物种...
atomic-boost-1.70.0.tar.gz boostorg-beast-boost-1.70.0.tar.gz boostorg-bimap-boost-1.70.0.tar.gz boostorg-bind-boost-1.70.0.tar.gz boostorg-build-boost-1.70.0.tar.gz boostorg-callable_traits-boost-...
beast 答案:A. program 解释:病毒(virus)是一种恶意软件程序。 【语法部分】 1、With Windows, you can run several powerful applications at once and switch quickly ____ them. 答案:B. among 解释:在...
php代码加密扩展 完安装php-beast后可以使用tools目录下的encode_files.php来加密你的项目使用。encode_files.php之前先修改tools目录下的configure.ini文件
5. **接收响应**: 使用Boost.Beast的`read`函数异步读取服务器返回的HTTP响应。响应同样是一个`boost::beast::http::response`对象。 6. **处理响应**: 解析响应体,根据业务需求处理数据。完成后,关闭连接。 7. ...
标题中的"EA Beast_v2.9_ea_"和描述中的"EA Beast_2.9"都提到了一个名为"EA Beast"的软件版本,这里的"EA"通常在金融交易,尤其是外汇交易(Forex)领域中代表“Expert Advisor”,即智能交易系统或自动交易机器人。...
BBC.The.World.At.War.1973.EP01-EP26.BluRay.720p.DTS.x264-beAst