当前位置:  开发笔记 > 编程语言 > 正文

Rails新手:"<<"是什么意思?

如何解决《Rails新手:"<<"是什么意思?》经验,为你挑选了1个好方法。

我正在尝试将高级搜索工具添加到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_pa​​rse_q_to_solr"thingie.

它是顶级类定义的一部分吗?现在它说:

class CataligController < ApplicationController

我应该用"<<:add_advanced_pa​​rse_q_to_solr"交换"

":"是什么意思,"<<"是什么意思?

如果有人对可以教我这些(我猜)基本语法的教程有任何好的参考,请在这里发布 - 我很想知道我在做什么而不是只是复制/粘贴我的方式!



1> SteveTurczyn..:

添加的行应出现在您的CatalogController定义中,因此......

class CatalogController < ApplicationController
  self.search_params_logic << :add_advanced_parse_q_to_solr

<操作在第一行显示了类继承.所述<<操作装置加在右侧作为一个新的元件来在左侧的阵列值.一种等效的方法是使用数组推送方法......

self.search_params_logic.push(:add_advanced_pa​​rse_q_to_solr)

这让我们想到了什么.意思......它只是意味着你正在调用一个方法,它是一个对象或对象类的一部分.

例如

"Hasse".downcase
=> "hasse"

字符串有一个方法downcase,在上面的行中,你在字符串上调用该方法,结果将被返回.

self.search_params_logic意味着你调用一个方法self(在这种情况下,self就是CatalogController这样,你可能也做CatalogController.search_params_logic,但它不是很优雅).

search_params_logic返回一个数组,你可以操纵数组......添加或删除元素,例如.

推荐阅读
郑小蒜9299_941611_G
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有