0

我很惊讶地看到在 Rails 中自定义东西是多么简单。您首先安装一个提供您需要的一些功能的 gem,然后您只需自定义您需要的东西。

Spree 就是一个例子,它可以通过简单地使用自定义代码覆盖模板和 ruby​​ 文件来进行自定义。

我只是想知道谁允许我这样做:是 Ruby 吗?是这些宝石的架构吗?是 Rails 架构吗?

4

2 回答 2

0

Ruby 允许元编程,因为它是在运行时评估的。

在 Rails 应用程序中,您可以将 ruby​​ String 之类的类添加到初始化程序文件夹并添加新的声明性方法,然后将其添加到 String 类并可以与 Strings 一起使用。

阅读更多http://www.vitarara.org/cms/ruby_metaprogamming_declaratively_adding_methods_to_a_class

于 2012-06-12T16:18:24.533 回答
0

它是部分铁轨和部分红宝石。多年来,Rails 已经被开发人员和插件编写(并且被重写为更多)可扩展。某些挂钩和覆盖功能的方法是通过 ruby​​ 启用的,而其他一些方法在许多动态性较低的语言中是相同的。

于 2012-06-12T20:57:49.810 回答