187

I have namespace admin in controller, and I want to generate a controller inside of the admin folder. How can i do it with a Rails command?

Chris Peters
  • 17,918
  • 6
  • 49
  • 65

5 Answers5

341

Try rails g controller admin/users if you want a users controller inside of the admin namespace. Of course, exchange users with whatever controller name that you'd like.

Chris Peters
  • 17,918
  • 6
  • 49
  • 65
71

Use this command..

rails generate controller namespace_name/controller_name

Ramiz Raja
  • 5,942
  • 3
  • 27
  • 39
20

If you want to gen it:

rails generate controller namespace_name/controller_name

And If you want to rollback this step using:

rails destroy controller namespace_name/controller_name
ThienSuBS
  • 1,574
  • 18
  • 26
7

In your case it will be

$ rails g controller admin/controller_name

If we have an app structure like

  • ---controllers
  • --api
  • -v1

and want to generate controller, do:

$ rails g controller api/v1/controller_name

In general

$ rails g controller namespace_1/namespace_2/...../controller_name
Manish
  • 81
  • 2
  • 3
2

You can also use the scope resolution operator to generate controllers within a namespace

rails g controller Admin::YourControllerName

or to generate controllers within nested namespaces

rails g controller Admin::YourNestedNamespace::YourControllerName

Ref: What is Ruby's double-colon `::`?, What does :: (double colon) mean in Ruby?

Poshcock
  • 31
  • 5