要开发plug,那么rails的版本必须是0.14后的。

plug的基本原理是什么呢?我们看一个例子:

我们假想这是rails的一个核心类
class A
 def foo
  "foo"
 end
end

这个就是你的插件了,你可以新增方法或者是覆盖原来的方法。
class A
 def foo
  "foofoo"
 end
 
 def bar
  "bar"
 end
end

现在可以在rails应用程序中使用A了,你的插件已经神奇般添加
进了Rails的核心了。

a = A.new
puts a.foo         #"foofoo"
puts a.bar         #"bar"

其实这用到的是ruby类的不封闭原则。