# Create a controller via a script .rb

**URL:** <https://www.ruby-forum.com/t/create-a-controller-via-a-script-rb/106617>\
**Category:** Rails\
**Created:** [June 12, 2007, 2:39pm UTC](https://www.ruby-forum.com/t/create-a-controller-via-a-script-rb/106617 "2007-06-12T14:39:03Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![halvor](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/h/8edcca/32.png) [@halvor](https://www.ruby-forum.com/u/halvor)\
**Post date:** [June 12, 2007, 2:39pm UTC](https://www.ruby-forum.com/t/create-a-controller-via-a-script-rb/106617/1 "2007-06-12T14:39:03Z")

</div>

Hello,

this should be a straightfoward question.  
I was wondering how to do the equivalent of :  
ruby script/generate controller MyNewController

from within a .rb file.  
I would then want to call the .rb script from my rails application.  
Thanks in advance

Hal

---

<div class="post-metadata">

**Author:** ![halvor](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/h/8edcca/32.png) [@halvor](https://www.ruby-forum.com/u/halvor)\
**Post date:** [June 12, 2007, 9:51pm UTC](https://www.ruby-forum.com/t/create-a-controller-via-a-script-rb/106617/2 "2007-06-12T21:51:18Z")

</div>

Solution :  
#!/usr/bin/env ruby  
class X  
def test2  
require File.dirname( **FILE** ) + ‘/…/config/boot’

require “#{RAILS\_ROOT}/config/environment”  
require ‘rails\_generator’  
require ‘rails\_generator/scripts/generate’

Rails::Generator::Scripts::Generate.new.run([‘controller’,‘dil’])

end  
end
