我很惊讶地发现在rails中定制东西有多简单。 首先安装一个gem,它提供了你需要的一些功能,然后你只需自定义你需要的东西。
一个例子是Spree,它可以通过简单地用自定义代码覆盖模板和ruby文件来定制。
我只是想知道是谁允许我这样做: 是Ruby吗? 这是宝石的架构吗? 它是Rails架构吗?
答案 0 :(得分:0)
Ruby允许元编程,因为它在运行时进行了评估。
在rails应用程序中,您可以将类似ruby String的类添加到initializers文件夹中,并添加新的声明性方法,然后将这些方法添加到String类中,并可与字符串一起使用。
了解更多http://www.vitarara.org/cms/ruby_metaprogamming_declaratively_adding_methods_to_a_class
答案 1 :(得分:0)
它是部分铁轨和部分红宝石。多年来,Rails已经被开发人员和插件编写(并且已被重写)。某些钩入和覆盖功能的方法是通过ruby实现的,而其他方法在许多动态性较弱的语言中都是相同的。