小编mko*_*mko的帖子

Sinatra如何定义和调用get方法?

我对这件事的运作方式很好奇.

在要求'sinatra'之后

然后我可以在顶级范围内调用get().

在深入研究源代码后,我发现了这个get()结构

module Sinatra
 class << self
   def get
    ...
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

知道类<< self是打开self对象的单例类定义并在里面添加get(),所以它开始有意义.

但唯一遗漏的是我无法理解的是它在模块Sinstra中,如何在不使用Sinatra :: resolution操作的情况下调用get()?

ruby metaprogramming sinatra

7
推荐指数
1
解决办法
887
查看次数

如果`main`是`Object`的实例,为什么我不能调用它?

当我输入时self,我得到一个返回值main.我做了这个测试:

main2 = Object.new
Run Code Online (Sandbox Code Playgroud)

然后我可以调用main2,它返回一些东西,但是当我调用时main,它会引发一个未定义的变量错误.这是怎么发生的?

以下是我在其他网站上发现的关于顶级环境如何工作的假设:

class Object  
  Object.new.instance_eval do  
    def self.to_s  
      "main"  
    end  
   private  
    ##  
    # Your program gets inserted here...  
    ##  

  end  
end 
Run Code Online (Sandbox Code Playgroud)

对于我,这说得通.

ruby

7
推荐指数
1
解决办法
2743
查看次数

为什么使用点来执行配置文件

嘿伙计们,我是Linux的新手.

在下面的命令中,为什么使用点来执行配置文件?

. ~/.profile
Run Code Online (Sandbox Code Playgroud)

unix

6
推荐指数
1
解决办法
2万
查看次数

有没有更好的方法来显示tmux中的cpu使用情况?

这是一个可能消耗大量CPU使用的解决方案(从本文中窃取):

我的ubuntu 12 ec2服务器有所不同

而是使用top -ln我应该使用top -bn1,

这是我的相关.tmux.conf文件

set -g status-right '#[fg=yellow]#[(getCpuUsage.sh)]'

它实际上每2秒调用一次并输出一大堆信息,我认为应该有一个较少的CPU消耗方式或使用一些标志来限制顶部只有cpu uage的输出

linux shell tmux

6
推荐指数
2
解决办法
5679
查看次数

如何将参数传递给Codeigniter中URL帮助器中的重定向方法?

我是Codeigniter的新手,我希望在验证失败后重定向到控制器:

if(!validate)
{
  redirect('/poll/list');
}
Run Code Online (Sandbox Code Playgroud)

但我需要传递一个变量,$error以显示一些错误指示,但我不知道如何将参数传递给redirect方法中URL helper,并且想法?

codeigniter

6
推荐指数
1
解决办法
1万
查看次数

当在Haml中将属性拉伸到多线时,我得到了一个不平衡的括号错误

以下代码unbalanced bracket error在第4行给出了我的信息

%ul
  - @sentences.each do |sentence|
    %li
      %a{id:"s-#{sentence.id}",
      href:"/sentence/#{sentence.id}",
      'data-type' => 'text',
      'data-url' => "/sentence/#{sentence.id}",
      'data-toggle' => 'manual'
      }= sentence.content
      %a{href:'#'}
        %i.icon-pencil



Haml::SyntaxError at /user/1/sentence
Unbalanced brackets.
file: sentences.haml location: nil line: 4
Run Code Online (Sandbox Code Playgroud)

任何的想法?

haml

6
推荐指数
1
解决办法
5446
查看次数

当vim启动时,我可以添加什么代码来使vimrc使<leader> ig命令运行?

我是Vim的新手,抱歉这个新手问题.我正在使用vim插件vim-indent-guides

切换插件的默认映射是<leader>ig.当vim-started时,应该进行什么修改才能使其切换

vim

6
推荐指数
1
解决办法
1540
查看次数

Square和Rectangle继承有什么问题?

我已经阅读了一些关于使Square成为Rectangle类的继承类的做法的一些文章,这说明它违反了LSP(Liskov替换原则).我仍然没有得到它,我在Ruby中做了一个示例代码:

class Rectangle
    attr_accessor :width, :height
    def initialize(width, height)
        @width = width
        @height = height
    end
end

class Square < Rectangle
    def initialize(length)
        super(length, length)
    end
    def width=(number)
        super(number)
        @height = number
    end

    def height=(number)
        super(number)
        @width = number
    end
end


s = Square.new(100)

s.width = 50

puts s.height
Run Code Online (Sandbox Code Playgroud)

谁能告诉我它有什么问题?

ruby oop liskov-substitution-principle

6
推荐指数
1
解决办法
2471
查看次数

如何为AVSpeechSynthesizer添加一个长暂停?

我发现--可以添加一个小停顿,如数字倒计时:

10--9--8--7--6--5--4--3--2--1--
Run Code Online (Sandbox Code Playgroud)

但我不知道如何添加一个长暂停,如1秒?

任何的想法?

avspeechsynthesizer

6
推荐指数
1
解决办法
1072
查看次数

是否有任何离线javascript API文档工具,如YARD for ruby​​可用?

Mozilla在线文档很棒,但有时我没有互联网连接和o'reilly javascript权威指南中的参考也很棒,但缺乏方便的搜索功能.

我只是想知道是否有像railsapi,或yardjQAPI这样的javascript

javascript code-documentation

5
推荐指数
1
解决办法
625
查看次数