[英]Rails newbie: What does “<<” mean?
我正在尝试为Blacklight安装添加高级搜索功能,但是我对Rails几乎一无所知。
我陷入了一个(到目前为止很棒的)教程中,该教程指出:
Turn this feature on by adding to your CatalogController definition:
self.search_params_logic << :add_advanced_parse_q_to_solr
我可以找到我的CatalogController,但是我不知道将“ <<:add_advanced_parse_q_to_solr”放在哪里。
它是顶部类定义的一部分吗? 现在它说:
class CataligController < ApplicationController
我应该将“ <ApplicationController”换成“ <<:add_advanced_parse_q_to_solr”,还是应该追加它?
“:”是什么意思,“ <<”是什么意思?
如果有人对可以教给我这些(我想)基本语法的教程有很好的引用,请在此处发布它们-我很想了解我在做什么,而不仅仅是复制/粘贴我的方法!
添加的行应出现在CatalogController
定义中,因此...
class CatalogController < ApplicationController
self.search_params_logic << :add_advanced_parse_q_to_solr
<
操作在第一行显示类继承。 <<
操作意味着将右边的值作为新元素添加到左边的数组中。 一种等效的方法是使用数组push方法。
self.search_params_logic.push(:add_advanced_parse_q_to_solr)
这使我们想到了什么.
意味着……这只是意味着您正在调用属于对象或对象类的一部分的方法。
例如
"Hasse".downcase
=> "hasse"
字符串的方法是小写的,在上一行中,您正在字符串上调用该方法,结果将返回。
self.search_params_logic
意味着您正在对self
调用一个方法(在这种情况下, self
是CatalogController
因此您也可以完成CatalogController.search_params_logic
但这不是很优雅)。
search_params_logic
返回一个数组,您可以操纵该数组...例如,添加或删除元素。
好吧, array << "something"
只是将新元素添加到array
。 和:something
是一个符号。 在使用Rails之前,您应该学习Ruby语言的基本语法。 从官方网站开始: https : //www.ruby-lang.org/en/ 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.