Home > Software engineering >  Rails generate controller command not building view files
Rails generate controller command not building view files

Time:12-23

I have been struggling to understand why I can't get view files created for my Rails project. The documentation shows that generating a controller also generates an associated view: Rails Docs

If I use that same command, I get one file generated, being the controller. My command

The only two files within the Views folder in my Rails project are mailer.html.erb and mailer.text.erb

Am I doing something wrong? Do I manually create the view files, and if so I can't seem to get them "connected" to the associated controller. I am new to Rails, so any insight would be helpful. Thanks!

CodePudding user response:

try this command :

rails g controller Articles index create

You can create methods and views dynamically after If you typed controller name in command.

CodePudding user response:

you are creating only a controller in your command not any methods that's why the views are not generated. If you need to generate views for the particular methods then you may run the below listed command.

rails g controller Articles index show

Here, index, show are the methods name. So, this command will create ArticlesController and also the respective view files.

CodePudding user response:

You can use the scaffold option.

rails g scaffold Post name:string title:string content:text

This command will generate the following files.

File Purpose
db/migrate/20100207214725_create_posts.rb Migration to create the posts table in your database (your name will include a different timestamp)
app/models/post.rb The Post model
test/unit/post_test.rb Unit testing harness for the posts model
test/fixtures/posts.yml Sample posts for use in testing
config/routes.rb Edited to include routing information for posts
app/controllers/posts_controller.rb The Posts controller
app/views/posts/index.html.erb A view to display an index of all posts
app/views/posts/edit.html.erb A view to edit an existing post
app/views/posts/show.html.erb A view to display a single post
app/views/posts/new.html.erb A view to create a new post
app/views/posts/_form.html.erb A partial to control the overall look and feel of the form used in edit and new views
test/functional/posts_controller_test.rb Functional testing harness for the posts controller
app/helpers/posts_helper.rb Helper functions to be used from the post views
test/unit/helpers/posts_helper_test.rb Unit testing harness for the posts helper
app/assets/javascripts/posts.js.coffee CoffeeScript for the posts controller
app/assets/stylesheets/posts.css.scss Cascading style sheet for the posts controller
app/assets/stylesheets/scaffolds.css.scss Cascading style sheet to make the scaffolded views look better
  • Related