2010-06-02 75 views
2

我正在开发一个使用Sinatra作为框架的ruby项目,并且有关于扩展类的问题。Ruby/Sinatra中的继承

比方说,我有一个用户类,由管理员扩展,管理员必须在User.rb中定义?我试过把它放在Admin.rb中,但是我得到一个错误:

admin.rb:1: uninitialized constant User (NameError) 

谢谢。

+1

那么需要'user.rb'呢? – 2010-06-02 10:34:37

回答

4

在Admin类中,您必须要求包含User定义的文件,以便ruby知道User在看到Admin类定义时的内容。

 
require 'user.rb' 

class Admin < User 

    ... 
    ... 

end 

+0

谢谢 - 显然我的红宝石需要一些认真的工作! :-) – Ger 2010-06-02 13:22:33