2008-10-26 45 views
0

我已經寫了這個生成器代碼,但它返回'不能將nil轉換爲字符串'當我在清單內部調用m.directory。任何人都知道發生了什麼?Rails生成器m.directory返回不能轉換零字符串

class AuthGenerator < Rails::Generator::NamedBase 
    attr_reader :user_class_name 
    def initialize(runtime_args, runtime_options={}) 
    @user_class_name="User" 
    @controller_class_name="AccountController" 
    @user_class_file_name="#{@user_class_name}.rb" 
    @controller_class_file_name="#{@controller_class_name}.rb" 
    end 

    def manifest 
    record do |m| 
     m.class_collisions @controller_class_name, @user_class 

     puts @user_class_name 
     m.directory File.join('app/models', @user_class_name) 


    end 
    end 

回答

1

它在哪裏窒息?請發佈完整的錯誤。您可以看到directory方法here的來源。

另外,你可能只是想

m.directory File.join('app/models') 

有一個應用程序/模型/用戶目錄中生成的代碼是不是標準的 - 除非你打算命名空間,它看起來並不像。

0

您的初始化方法需要調用super。

相關問題