eryan.yu-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
2007-Jun-25 17:20 UTC
undefined method `each'' for ***:Class PROBLEM
Hi,
i am very new to ROR, this is my 2nd day since i solve the problem of
database connection. when i started to write some codes, i got stuck.
here is the situation and please give me some help.
i have a "posts" table in my database
CREATE TABLE `mapapp`.`posts` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(255) default NULL,
`body` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
i have an empty "post.rb" in my Models which looks like this:
class Post < ActiveRecord::Base
end
i wrote an action in my controller which looks like this:
def testing
@posts = Post
for p in @posts
render :text => p.id
end
end
when i run this action on the browser, it gives me this error message:
NoMethodError in PlcController#testing
undefined method `each'' for Post:Class
RAILS_ROOT: ./script/../config/..
Application Trace | Framework Trace | Full Trace
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/
base.rb:1235:in `method_missing''
#{RAILS_ROOT}/app/controllers/plc_controller.rb:40:in `testing''
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/
base.rb:1235:in `method_missing''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
base.rb:1095:in `send''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
base.rb:1095:in `perform_action_without_filters''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
filters.rb:632:in `call_filter''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
filters.rb:619:in `perform_action_without_benchmark''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
benchmarking.rb:66:in `perform_action_without_rescue''
C:/ruby/lib/ruby/1.8/benchmark.rb:293:in `measure''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
benchmarking.rb:66:in `perform_action_without_rescue''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
rescue.rb:83:in `perform_action''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
base.rb:430:in `send''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
base.rb:430:in `process_without_filters''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
filters.rb:624:in `process_without_session_management_support''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
session_management.rb:114:in `process''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
base.rb:330:in `process''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/dispatcher.rb:41:in
`dispatch''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:
113:in `handle_dispatch''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:79:in
`service''
C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service''
C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run''
C:/ruby/lib/ruby/1.8/webrick/server.rb:173:in `start_thread''
C:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start''
C:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start_thread''
C:/ruby/lib/ruby/1.8/webrick/server.rb:95:in `start''
C:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `each''
C:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `start''
C:/ruby/lib/ruby/1.8/webrick/server.rb:23:in `start''
C:/ruby/lib/ruby/1.8/webrick/server.rb:82:in `start''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:63:in
`dispatch''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/servers/
webrick.rb:59
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`gem_original_require''
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`require''
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
dependencies.rb:495:in `require''
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
dependencies.rb:342:in `new_constants_in''
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
dependencies.rb:495:in `require''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/server.rb:39
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`gem_original_require''
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`require''
script/server:3
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/
base.rb:1235:in `method_missing''
#{RAILS_ROOT}/app/controllers/plc_controller.rb:40:in `testing''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
base.rb:1095:in `send''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
base.rb:1095:in `perform_action_without_filters''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
filters.rb:632:in `call_filter''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
filters.rb:619:in `perform_action_without_benchmark''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
benchmarking.rb:66:in `perform_action_without_rescue''
C:/ruby/lib/ruby/1.8/benchmark.rb:293:in `measure''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
benchmarking.rb:66:in `perform_action_without_rescue''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
rescue.rb:83:in `perform_action''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
base.rb:430:in `send''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
base.rb:430:in `process_without_filters''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
filters.rb:624:in `process_without_session_management_support''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
session_management.rb:114:in `process''
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
base.rb:330:in `process''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/dispatcher.rb:41:in
`dispatch''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:
113:in `handle_dispatch''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:79:in
`service''
C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service''
C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run''
C:/ruby/lib/ruby/1.8/webrick/server.rb:173:in `start_thread''
C:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start''
C:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start_thread''
C:/ruby/lib/ruby/1.8/webrick/server.rb:95:in `start''
C:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `each''
C:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `start''
C:/ruby/lib/ruby/1.8/webrick/server.rb:23:in `start''
C:/ruby/lib/ruby/1.8/webrick/server.rb:82:in `start''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:63:in
`dispatch''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/servers/
webrick.rb:59
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`gem_original_require''
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`require''
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
dependencies.rb:495:in `require''
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
dependencies.rb:342:in `new_constants_in''
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
dependencies.rb:495:in `require''
C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/server.rb:39
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`gem_original_require''
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`require''
script/server:3
i m very new, so please excuse me if i asked stupid questions.
but thanks for you time looking.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---
jgarvin.lists-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
2007-Jun-25 17:38 UTC
Re: undefined method `each'' for ***:Class PROBLEM
Make the following change....
def testing
@posts = Post.find(:all)
On Jun 25, 11:20 am,
"eryan...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org"
<eryan...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
wrote:> Hi,
>
> i am very new to ROR, this is my 2nd day since i solve the problem of
> database connection. when i started to write some codes, i got stuck.
> here is the situation and please give me some help.
>
> i have a "posts" table in my database
>
> CREATE TABLE `mapapp`.`posts` (
> `id` int(11) NOT NULL auto_increment,
> `title` varchar(255) default NULL,
> `body` text,
> PRIMARY KEY (`id`)
> ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
>
> i have an empty "post.rb" in my Models which looks like this:
> class Post < ActiveRecord::Base
> end
>
> i wrote an action in my controller which looks like this:
> def testing
> @posts = Post
> for p in @posts
> render :text => p.id
> end
> end
>
> when i run this action on the browser, it gives me this error message:
> NoMethodError in PlcController#testing
> undefined method `each'' for Post:Class
> RAILS_ROOT: ./script/../config/..
>
> Application Trace | Framework Trace | Full Trace
> C:/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/
> base.rb:1235:in `method_missing''
> #{RAILS_ROOT}/app/controllers/plc_controller.rb:40:in `testing''
> C:/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/
> base.rb:1235:in `method_missing''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> base.rb:1095:in `send''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> base.rb:1095:in `perform_action_without_filters''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> filters.rb:632:in `call_filter''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> filters.rb:619:in `perform_action_without_benchmark''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> benchmarking.rb:66:in `perform_action_without_rescue''
> C:/ruby/lib/ruby/1.8/benchmark.rb:293:in `measure''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> benchmarking.rb:66:in `perform_action_without_rescue''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> rescue.rb:83:in `perform_action''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> base.rb:430:in `send''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> base.rb:430:in `process_without_filters''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> filters.rb:624:in `process_without_session_management_support''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> session_management.rb:114:in `process''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> base.rb:330:in `process''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/dispatcher.rb:41:in
> `dispatch''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:
> 113:in `handle_dispatch''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:79:in
> `service''
> C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service''
> C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:173:in `start_thread''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start_thread''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:95:in `start''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `each''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `start''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:23:in `start''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:82:in `start''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:63:in
> `dispatch''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/servers/
> webrick.rb:59
> C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
> `gem_original_require''
> C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
> `require''
> C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
> dependencies.rb:495:in `require''
> C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
> dependencies.rb:342:in `new_constants_in''
> C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
> dependencies.rb:495:in `require''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/server.rb:39
> C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
> `gem_original_require''
> C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
> `require''
> script/server:3
> C:/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/
> base.rb:1235:in `method_missing''
> #{RAILS_ROOT}/app/controllers/plc_controller.rb:40:in `testing''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> base.rb:1095:in `send''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> base.rb:1095:in `perform_action_without_filters''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> filters.rb:632:in `call_filter''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> filters.rb:619:in `perform_action_without_benchmark''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> benchmarking.rb:66:in `perform_action_without_rescue''
> C:/ruby/lib/ruby/1.8/benchmark.rb:293:in `measure''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> benchmarking.rb:66:in `perform_action_without_rescue''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> rescue.rb:83:in `perform_action''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> base.rb:430:in `send''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> base.rb:430:in `process_without_filters''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> filters.rb:624:in `process_without_session_management_support''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> session_management.rb:114:in `process''
> C:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/
> base.rb:330:in `process''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/dispatcher.rb:41:in
> `dispatch''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:
> 113:in `handle_dispatch''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:79:in
> `service''
> C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service''
> C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:173:in `start_thread''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start_thread''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:95:in `start''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `each''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `start''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:23:in `start''
> C:/ruby/lib/ruby/1.8/webrick/server.rb:82:in `start''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:63:in
> `dispatch''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/servers/
> webrick.rb:59
> C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
> `gem_original_require''
> C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
> `require''
> C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
> dependencies.rb:495:in `require''
> C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
> dependencies.rb:342:in `new_constants_in''
> C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/
> dependencies.rb:495:in `require''
> C:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/server.rb:39
> C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
> `gem_original_require''
> C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
> `require''
> script/server:3
>
> i m very new, so please excuse me if i asked stupid questions.
>
> but thanks for you time looking.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---
eryan.yu-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org wrote:> i wrote an action in my controller which looks like this: > def testing > @posts = Post > for p in @posts > render :text => p.id > end > end > > when i run this action on the browser, it gives me this error message: > NoMethodError in PlcController#testing > undefined method `each'' for Post:ClassYour: for p in @posts is equivalent to: @posts.each do |p| You''ve just set @posts to be equal to the class Post, which doesn''t have an each method. What you probably meant to do is: @posts = Post.find(:all) or some other query to retrieve an array of Posts. Pete Yandell http://notahat.com/ --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---