2013-03-27 58 views
0

這是其中一個「爲什麼事情在某種方式下工作」的問題。爲什麼視圖代碼不能包裝在類中?

由於Rails是純粹面向對象的語言,因此控制器代碼,模型代碼,幫助代碼,遷移代碼等都封裝在類中。但不是查看代碼。

所以我想知道:Rails如何知道視圖代碼屬於Active View class?這在內部是如何工作的?

+0

查看Rails代碼中的render調用。有一個Railscasts的ActionView的演練。 – cpuguy83 2013-03-27 01:09:53

回答

0

所有紅寶石運行文件包含在類中,只需運行包含此文件:

puts self.class.name 

,你會看到你的代碼被包裝在一個Object類在執行時。

+0

非常感謝 - 奇怪的是,'self.class?' 放了一個類,但'self.class.name'沒有放置任何東西。怎麼來的? – weltschmerz 2013-03-27 01:37:07

+0

'把self.class.name'打印給我的對象。 Ruby 1.9.3 – 2013-03-27 01:44:01

+0

沒有爲我提供任何東西 - 在這裏使用相同的ruby版本 – weltschmerz 2013-03-27 01:46:16

相關問題