How can I iterate through all of the Models in my rails app?

后端 未结 5 2175
自闭症患者
自闭症患者 2021-02-08 17:14

I would like to be able to iterate over and inspect all the models in my rails app. In pseudo-code it would look something like:

rails_env.models.each do |model|         


        
5条回答
  •  南旧
    南旧 (楼主)
    2021-02-08 18:11

    Iterate over all files in `$RAILS_ROOT\app\models' ?

    For instance

    def find_all_models
      # iterate over all files in folder
      folder = File.join(RAILS_ROOT, "app", "models")      
      Dir[File.join(folder, "*")].each do |filename|
        # remove .rb
        model_name = File.basename(filename).sub(/.rb$/, '').capitalize
        model = Kernel.const_get(model_name)
        # .. do something with your model :)
      end
    end
    

    Does this help?

提交回复
热议问题