188

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?

5 Answers 5

345

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.

Sign up to request clarification or add additional context in comments.

Comments

71

Use this command..

rails generate controller namespace_name/controller_name

Comments

21

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

Comments

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

Comments

3

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?

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.