The error occurred while evaluating nil.to_sym

Hello guys,

I’ve been developing in Ruby for a few months and I am starting to work with Rails. I am having a problem right from the start and I think I am not doing anything wrong. I have performed the following steps:

  1. run rails test

  2. run script/server and it works perfectly connecting to the database without problems (sqllite)

  3. run script/generate scaffold release_notes title:string version:string content:text

  4. rake db:migrate

  5. shutdown the server and start it again

  6. http://localhost:3000/release_notes/new and it works just fine

  7. After I click on create I get the error below. I have checked that removing all the “link_to” entries the error disappear. any ideas? what am I forgetting?

NoMethodError in Release_notes#index

Showing release_notes/index.html.erb where line #15 raised:

You have a nil object when you didn’t expect it!

The error occurred while evaluating nil.to_sym

Extracted source (around line #15):

12:

<%=h release_notes.title %>

13:

<%=h release_notes.version %>

14:

<%=h release_notes.content %>

15:

<%= link_to ‘Show’, release_notes %>

16:

<%= link_to ‘Edit’, edit_release_notes_path(release_notes) %>

17:

<%= link_to ‘Destroy’, release_notes, :confirm => ‘Are you sure?’, :method => :delete %>

18:

RAILS_ROOT: /Users/gacilu/Knowledge Administration/Koiaka Project/Projects/F1/Development/Iteration4/code/iqserver

Application Trace | Framework Trace | Full Trace

/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_controller/routing/route.rb:145:in `extra_keys’

/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_controller/routing/route.rb:145:in `map’

/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_controller/routing/route.rb:145:in `extra_keys’

generated code (/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_controller/routing/route.rb:45):3:in `generate’

/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_controller/routing/route.rb:122:in `generate’

/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_controller/routing/route_set.rb:337:in `generate’

/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_controller/url_rewriter.rb:131:in `rewrite_path’

/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_controller/url_rewriter.rb:110:in `rewrite_url’

/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_controller/url_rewriter.rb:88:in `rewrite’

/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_controller/base.rb:622:in `url_for’

/usr/local/jruby-1.1.4/lib/ruby/gems/1.8/gems/actionpack-2.1.1/lib/action_view/helpers/url_helper.rb:71:in `url_for’

(eval):17:in `release_notes_path’

app/views/release_notes/index.html.erb:15:in `_run_erb_47app47views47release_notes47index46html46erb’

app/views/release_notes/index.html.erb:10:in `each’

app/views/release_notes/index.html.erb:10:in `_run_erb_47app47views47release_notes47index46html46erb’

app/controllers/release_notes_controller.rb:7:in `index’

:1:in `initialize’

Thanks,

GA

this should have a path
<%= link_to 'Show', release_notes %></td>
like
<%= link_to 'Show', release_note_path(release_notes) %></td>
or whatever you defined in your routes

Thanks for your answer.

I have not defined anything in the routes yet. If I did not do any changes, shouldn’t the generated file work from the beginning?

GA

Hi Benoit,

5. run script/generate scaffold release_notes title:string
version:string content:text

  Try like
./script/generate scaffold ReleaseNote title:string version:string
content:text