3

I have never used ruby and thought I would give it a shot. The installation seems to have gone fine(i think). The trouble begins after I create the server using rails server and go to set up the route, so that the new project will show up instead of the ruby welcome screen. The error it produces is

uninitialized constant WelcomeController

I set up the path in the route controller like so

Rails.application.routes.draw do
root 'welcome#index'

Have I missed a step? I am seting up rails on Windows seven using the instructions from installrails.com

Here is the full trace as requested

app/assets/javascripts/application.js:15 sprockets (3.6.0)
lib/sprockets/resolve.rb:64:in `resolve!' sprockets (3.6.0)
lib/sprockets/directive_processor.rb:399:in `resolve' sprockets
(3.6.0) lib/sprockets/directive_processor.rb:207:in
`process_require_directive' sprockets (3.6.0)
lib/sprockets/directive_processor.rb:180:in `block in
process_directives' sprockets (3.6.0)
lib/sprockets/directive_processor.rb:178:in `each' sprockets (3.6.0)
lib/sprockets/directive_processor.rb:178:in `process_directives'
sprockets (3.6.0) lib/sprockets/directive_processor.rb:83:in `_call'
sprockets (3.6.0) lib/sprockets/directive_processor.rb:68:in `call'
sprockets (3.6.0) lib/sprockets/processor_utils.rb:75:in
`call_processor' sprockets (3.6.0)
lib/sprockets/processor_utils.rb:57:in `block in call_processors'
sprockets (3.6.0) lib/sprockets/processor_utils.rb:56:in
`reverse_each' sprockets (3.6.0)
lib/sprockets/processor_utils.rb:56:in `call_processors' sprockets
(3.6.0) lib/sprockets/loader.rb:134:in `load_from_unloaded' sprockets
(3.6.0) lib/sprockets/loader.rb:60:in `block in load' sprockets
(3.6.0) lib/sprockets/loader.rb:317:in
`fetch_asset_from_dependency_cache' sprockets (3.6.0)
lib/sprockets/loader.rb:44:in `load' sprockets (3.6.0)
lib/sprockets/cached_environment.rb:20:in `block in initialize'
sprockets (3.6.0) lib/sprockets/cached_environment.rb:47:in `yield'
sprockets (3.6.0) lib/sprockets/cached_environment.rb:47:in `load'
sprockets (3.6.0) lib/sprockets/bundle.rb:23:in `block in call'
sprockets (3.6.0) lib/sprockets/utils.rb:183:in `dfs' sprockets
(3.6.0) lib/sprockets/bundle.rb:24:in `call' sprockets (3.6.0)
lib/sprockets/processor_utils.rb:75:in `call_processor' sprockets
(3.6.0) lib/sprockets/processor_utils.rb:57:in `block in
call_processors' sprockets (3.6.0)
lib/sprockets/processor_utils.rb:56:in `reverse_each' sprockets
(3.6.0) lib/sprockets/processor_utils.rb:56:in `call_processors'
sprockets (3.6.0) lib/sprockets/loader.rb:134:in `load_from_unloaded'
sprockets (3.6.0) lib/sprockets/loader.rb:60:in `block in load'
sprockets (3.6.0) lib/sprockets/loader.rb:317:in
`fetch_asset_from_dependency_cache' sprockets (3.6.0)
lib/sprockets/loader.rb:44:in `load' sprockets (3.6.0)
lib/sprockets/cached_environment.rb:20:in `block in initialize'
sprockets (3.6.0) lib/sprockets/cached_environment.rb:47:in `yield'
sprockets (3.6.0) lib/sprockets/cached_environment.rb:47:in `load'
sprockets (3.6.0) lib/sprockets/base.rb:66:in `find_asset' sprockets
(3.6.0) lib/sprockets/base.rb:73:in `find_all_linked_assets' sprockets
(3.6.0) lib/sprockets/manifest.rb:142:in `block in find' sprockets
(3.6.0) lib/sprockets/legacy.rb:114:in `block (2 levels) in
logical_paths' sprockets (3.6.0) lib/sprockets/path_utils.rb:223:in
`block in stat_tree' sprockets (3.6.0)
lib/sprockets/path_utils.rb:207:in `block in stat_directory' sprockets
(3.6.0) lib/sprockets/path_utils.rb:204:in `each' sprockets (3.6.0)
lib/sprockets/path_utils.rb:204:in `stat_directory' sprockets (3.6.0)
lib/sprockets/path_utils.rb:222:in `stat_tree' sprockets (3.6.0)
lib/sprockets/legacy.rb:105:in `each' sprockets (3.6.0)
lib/sprockets/legacy.rb:105:in `block in logical_paths' sprockets
(3.6.0) lib/sprockets/legacy.rb:104:in `each' sprockets (3.6.0)
lib/sprockets/legacy.rb:104:in `logical_paths' sprockets (3.6.0)
lib/sprockets/manifest.rb:140:in `find' sprockets-rails (3.0.4)
lib/sprockets/railtie.rb:49:in `each' sprockets-rails (3.0.4)
lib/sprockets/railtie.rb:49:in `map' sprockets-rails (3.0.4)
lib/sprockets/railtie.rb:49:in `precompiled_assets' sprockets-rails
(3.0.4) lib/sprockets/railtie.rb:34:in `asset_precompiled?'
sprockets-rails (3.0.4) lib/sprockets/railtie.rb:214:in `block (3
levels) in <class:Railtie>' sprockets-rails (3.0.4)
lib/sprockets/rails/helper.rb:345:in `call' sprockets-rails (3.0.4)
lib/sprockets/rails/helper.rb:345:in `precompiled?' sprockets-rails
(3.0.4) lib/sprockets/rails/helper.rb:349:in
`raise_unless_precompiled_asset' sprockets-rails (3.0.4)
lib/sprockets/rails/helper.rb:334:in `find_debug_asset'
sprockets-rails (3.0.4) lib/sprockets/rails/helper.rb:216:in `block in
lookup_debug_asset' sprockets-rails (3.0.4)
lib/sprockets/rails/helper.rb:229:in `block in resolve_asset'
sprockets-rails (3.0.4) lib/sprockets/rails/helper.rb:228:in `each'
sprockets-rails (3.0.4) lib/sprockets/rails/helper.rb:228:in `detect'
sprockets-rails (3.0.4) lib/sprockets/rails/helper.rb:228:in
`resolve_asset' sprockets-rails (3.0.4)
lib/sprockets/rails/helper.rb:215:in `lookup_debug_asset'
sprockets-rails (3.0.4) lib/sprockets/rails/helper.rb:157:in `block in
stylesheet_link_tag' sprockets-rails (3.0.4)
lib/sprockets/rails/helper.rb:156:in `map' sprockets-rails (3.0.4)
lib/sprockets/rails/helper.rb:156:in `stylesheet_link_tag'
app/views/layouts/application.html.erb:5:in
`_app_views_layouts_application_html_erb__347772551_45585852'
actionview (4.2.6) lib/action_view/template.rb:145:in `block in
render' activesupport (4.2.6)
lib/active_support/notifications.rb:166:in `instrument' actionview
(4.2.6) lib/action_view/template.rb:333:in `instrument' actionview
(4.2.6) lib/action_view/template.rb:143:in `render' actionview (4.2.6)
lib/action_view/renderer/template_renderer.rb:66:in
`render_with_layout' actionview (4.2.6)
lib/action_view/renderer/template_renderer.rb:52:in `render_template'
actionview (4.2.6) lib/action_view/renderer/template_renderer.rb:14:in
`render' actionview (4.2.6) lib/action_view/renderer/renderer.rb:46:in
`render_template' actionview (4.2.6)
lib/action_view/renderer/renderer.rb:27:in `render' actionview (4.2.6)
lib/action_view/rendering.rb:100:in `_render_template' actionpack
(4.2.6) lib/action_controller/metal/streaming.rb:217:in
`_render_template' actionview (4.2.6)
lib/action_view/rendering.rb:83:in `render_to_body' actionpack (4.2.6)
lib/action_controller/metal/rendering.rb:32:in `render_to_body'
actionpack (4.2.6) lib/action_controller/metal/renderers.rb:37:in
`render_to_body' actionpack (4.2.6)
lib/abstract_controller/rendering.rb:25:in `render' actionpack (4.2.6)
lib/action_controller/metal/rendering.rb:16:in `render' actionpack
(4.2.6) lib/action_controller/metal/instrumentation.rb:44:in `block (2
levels) in render' activesupport (4.2.6)
lib/active_support/core_ext/benchmark.rb:12:in `block in ms'
c:/RailsInstaller/Ruby2.2.0/lib/ruby/2.2.0/benchmark.rb:303:in
`realtime' activesupport (4.2.6)
lib/active_support/core_ext/benchmark.rb:12:in `ms' actionpack (4.2.6)
lib/action_controller/metal/instrumentation.rb:44:in `block in render'
actionpack (4.2.6)
lib/action_controller/metal/instrumentation.rb:87:in
`cleanup_view_runtime' activerecord (4.2.6)
lib/active_record/railties/controller_runtime.rb:25:in
`cleanup_view_runtime' actionpack (4.2.6)
lib/action_controller/metal/instrumentation.rb:43:in `render'
actionpack (4.2.6)
lib/action_controller/metal/implicit_render.rb:10:in `default_render'
actionpack (4.2.6) lib/action_controller/metal/implicit_render.rb:5:in
`send_action' actionpack (4.2.6)
lib/abstract_controller/base.rb:198:in `process_action' actionpack
(4.2.6) lib/action_controller/metal/rendering.rb:10:in
`process_action' actionpack (4.2.6)
lib/abstract_controller/callbacks.rb:20:in `block in process_action'
activesupport (4.2.6) lib/active_support/callbacks.rb:117:in `call'
activesupport (4.2.6) lib/active_support/callbacks.rb:117:in `call'
activesupport (4.2.6) lib/active_support/callbacks.rb:555:in `block (2
levels) in compile' activesupport (4.2.6)
lib/active_support/callbacks.rb:505:in `call' activesupport (4.2.6)
lib/active_support/callbacks.rb:505:in `call' activesupport (4.2.6)
lib/active_support/callbacks.rb:92:in `__run_callbacks__'
activesupport (4.2.6) lib/active_support/callbacks.rb:778:in
`_run_process_action_callbacks' activesupport (4.2.6)
lib/active_support/callbacks.rb:81:in `run_callbacks' actionpack
(4.2.6) lib/abstract_controller/callbacks.rb:19:in `process_action'
actionpack (4.2.6) lib/action_controller/metal/rescue.rb:29:in
`process_action' actionpack (4.2.6)
lib/action_controller/metal/instrumentation.rb:32:in `block in
process_action' activesupport (4.2.6)
lib/active_support/notifications.rb:164:in `block in instrument'
activesupport (4.2.6)
lib/active_support/notifications/instrumenter.rb:20:in `instrument'
activesupport (4.2.6) lib/active_support/notifications.rb:164:in
`instrument' actionpack (4.2.6)
lib/action_controller/metal/instrumentation.rb:30:in `process_action'
actionpack (4.2.6)
lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
activerecord (4.2.6)
lib/active_record/railties/controller_runtime.rb:18:in
`process_action' actionpack (4.2.6)
lib/abstract_controller/base.rb:137:in `process' actionview (4.2.6)
lib/action_view/rendering.rb:30:in `process' actionpack (4.2.6)
lib/action_controller/metal.rb:196:in `dispatch' actionpack (4.2.6)
lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
actionpack (4.2.6) lib/action_controller/metal.rb:237:in `block in
action' actionpack (4.2.6)
lib/action_dispatch/routing/route_set.rb:74:in `call' actionpack
(4.2.6) lib/action_dispatch/routing/route_set.rb:74:in `dispatch'
actionpack (4.2.6) lib/action_dispatch/routing/route_set.rb:43:in
`serve' actionpack (4.2.6) lib/action_dispatch/journey/router.rb:43:in
`block in serve' actionpack (4.2.6)
lib/action_dispatch/journey/router.rb:30:in `each' actionpack (4.2.6)
lib/action_dispatch/journey/router.rb:30:in `serve' actionpack (4.2.6)
lib/action_dispatch/routing/route_set.rb:817:in `call' rack (1.6.4)
lib/rack/etag.rb:24:in `call' rack (1.6.4)
lib/rack/conditionalget.rb:25:in `call' rack (1.6.4)
lib/rack/head.rb:13:in `call' actionpack (4.2.6)
lib/action_dispatch/middleware/params_parser.rb:27:in `call'
actionpack (4.2.6) lib/action_dispatch/middleware/flash.rb:260:in
`call' rack (1.6.4) lib/rack/session/abstract/id.rb:225:in `context'
rack (1.6.4) lib/rack/session/abstract/id.rb:220:in `call' actionpack
(4.2.6) lib/action_dispatch/middleware/cookies.rb:560:in `call'
activerecord (4.2.6) lib/active_record/query_cache.rb:36:in `call'
activerecord (4.2.6)
lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in
`call' activerecord (4.2.6) lib/active_record/migration.rb:377:in
`call' actionpack (4.2.6)
lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (4.2.6) lib/active_support/callbacks.rb:88:in
`__run_callbacks__' activesupport (4.2.6)
lib/active_support/callbacks.rb:778:in `_run_call_callbacks'
activesupport (4.2.6) lib/active_support/callbacks.rb:81:in
`run_callbacks' actionpack (4.2.6)
lib/action_dispatch/middleware/callbacks.rb:27:in `call' actionpack
(4.2.6) lib/action_dispatch/middleware/reloader.rb:73:in `call'
actionpack (4.2.6) lib/action_dispatch/middleware/remote_ip.rb:78:in
`call' actionpack (4.2.6)
lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
web-console (2.3.0) lib/web_console/middleware.rb:28:in `block in
call' web-console (2.3.0) lib/web_console/middleware.rb:18:in `catch'
web-console (2.3.0) lib/web_console/middleware.rb:18:in `call'
actionpack (4.2.6)
lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
railties (4.2.6) lib/rails/rack/logger.rb:38:in `call_app' railties
(4.2.6) lib/rails/rack/logger.rb:20:in `block in call' activesupport
(4.2.6) lib/active_support/tagged_logging.rb:68:in `block in tagged'
activesupport (4.2.6) lib/active_support/tagged_logging.rb:26:in
`tagged' activesupport (4.2.6)
lib/active_support/tagged_logging.rb:68:in `tagged' railties (4.2.6)
lib/rails/rack/logger.rb:20:in `call' actionpack (4.2.6)
lib/action_dispatch/middleware/request_id.rb:21:in `call' rack (1.6.4)
lib/rack/methodoverride.rb:22:in `call' rack (1.6.4)
lib/rack/runtime.rb:18:in `call' activesupport (4.2.6)
lib/active_support/cache/strategy/local_cache_middleware.rb:28:in
`call' rack (1.6.4) lib/rack/lock.rb:17:in `call' actionpack (4.2.6)
lib/action_dispatch/middleware/static.rb:120:in `call' rack (1.6.4)
lib/rack/sendfile.rb:113:in `call' railties (4.2.6)
lib/rails/engine.rb:518:in `call' railties (4.2.6)
lib/rails/application.rb:165:in `call' rack (1.6.4)
lib/rack/lock.rb:17:in `call' rack (1.6.4)
lib/rack/content_length.rb:15:in `call' rack (1.6.4)
lib/rack/handler/webrick.rb:88:in `service'
c:/RailsInstaller/Ruby2.2.0/lib/ruby/2.2.0/webrick/httpserver.rb:138:in
`service'
c:/RailsInstaller/Ruby2.2.0/lib/ruby/2.2.0/webrick/httpserver.rb:94:in
`run'
c:/RailsInstaller/Ruby2.2.0/lib/ruby/2.2.0/webrick/server.rb:294:in
`block in start_thread'
Mike Szyndel
  • 10,461
  • 10
  • 47
  • 63
Skullomania
  • 2,225
  • 2
  • 29
  • 65
  • This is a great blog post getting started with basic rails application http://nbucciarelli.github.io/blog/2014/04/16/creating-a-basic-rails-application/ – Casey Robinson Jun 05 '16 at 22:49
  • That is one ***HECK*** of a error...... –  Jun 06 '16 at 16:31
  • The stack trace you've shown us does not include the error you indicated in the question. I believe the two are unrelated. – Scott Swezey Jun 07 '16 at 04:22

2 Answers2

3

This error is likely caused by a lack of welcome_controller.rb file defining WelcomeController in app/controllers.

This doc may be helpful in getting started: http://guides.rubyonrails.org/action_controller_overview.html#controller-naming-convention

Scott Swezey
  • 2,147
  • 2
  • 18
  • 28
  • Following the documentation I get an error that reads **TypeError: Object doesn't support this property or method** I have done all the steps from http://guides.rubyonrails.org/getting_started.html. On 4.2 I create the controller successfully but I get the type error above when I try to navigate to it. On 4.3 I can tell the routing works because I get the TypeError when I hit localhost:3000 – Skullomania Jun 06 '16 at 00:40
  • I have posted the trace – Skullomania Jun 06 '16 at 16:30
  • That's definitely not what I was expecting to see at all. I'll have to dig into it when I'm at a computer this evening. – Scott Swezey Jun 06 '16 at 16:50
2

Rails uses lots of conventions, for instance, the route reference welcome#index will refer to a controller named WelcomeController and call a method named index.

You have to create a controller app/controllers/welcome_controller.rb like this:

class WelcomeController < ApplicationController
  def index
    render text:"hello world!"
  end
end

Now you'll be able to see the "hellow world!" text in the root's route.

You can also use a generator to create the controller executing in the terminal: rails generate controller welcome index.

Another convention is the controller's method index without render will delivery the view app/views/welcome/index.html.erb.

Check more about rendering in this guide: layouts and rendering

wlads
  • 767
  • 7
  • 9
  • I used the second option you listed as noted here http://guides.rubyonrails.org/getting_started.html#say-hello-rails The trouble it I get a **TypeError: Object doesn't support this property or method** when I try to navigate to it. Its almost as though a dependency is missing or something. I looked elsewhere on SO and followed the instructions here http://stackoverflow.com/questions/28312460/object-doesnt-support-this-property-or-method-rails-windows-64bit but to no avail. Im still hanging in there though. Its personal now! – Skullomania Jun 06 '16 at 00:44
  • 2
    Just a quick thought, you may want to try a free cloud IDE such as cloud9 - https://c9.io or the like and see if the error persists after replicating your steps. If all is fine, then you'll at least know its a problem with your setup or not... Best of luck! – typo Jun 06 '16 at 04:42
  • 1
    @TylerRollins it works in cloud9. I would have loved to get ruby working on my win7 os but I guess this will work for now. – Skullomania Jun 07 '16 at 14:37