[Rails] Re: Couldn't find User without an ID
Hi radhames!
So the problem lies in my routes!?!, do you have any suggestion on how
it should look?
Thanks!
// Anders
On 12 Sep, 04:48, radhames brito <rbri...@gmail.com> wrote:
> ok there is a problem
>
> @user = User.find(params[:id]) <================= params[:id] is pulled
> from the url query string
>
> in rails the convention is this
>
> /controller/action/id
>
> in cases there you need to pull one specific record
>
> /controller/action
>
> to pull a collection
>
> @user = User.find(params[:id])
>
> here you are pulling an specific user but
>
> root :to => 'pages#home'
>
> there is no id at the end of your so params[:id] has nothing in it
>
> thats why Couldn't find User without an ID
>
>
>
> On Sat, Sep 11, 2010 at 2:08 PM, Anders_P <and...@andersplanting.se> wrote:
> > Thanks for your tips Colin!
>
> > Hi radhames!
>
> > Thanks for your help on my previous topic.
>
> > Here is my routes.rb file:
>
> > resources :users
> > resources :sessions, :only => [:new, :create, :destroy]
> > resources :ads, :only => [:new, :create, :destroy]
>
> > match '/registrera', :to => 'users#new'
>
> > match '/inloggning', :to => 'sessions#new'
> > match '/utloggning', :to => 'sessions#destroy'
>
> > root :to => 'pages#home'
> > match '/kontakt', :to => 'pages#contact'
> > match '/om', :to => 'pages#about'
>
> > Thanks!
>
> > // Anders
>
> > On 11 Sep, 19:21, radhames brito <rbri...@gmail.com> wrote:
> > > home action seems to be a member restful action and it needs an id to
> > find
> > > the record but you are not declaring that route the right way
> > > show the routes please
>
> > > On Sat, Sep 11, 2010 at 8:25 AM, Colin Law <clan...@googlemail.com>
> > wrote:
> > > > On 11 September 2010 12:14, Anders_P <and...@andersplanting.se> wrote:
>
> > > > Could you not top post please, it is easier to follow the thread if
> > > > comments are inserted into the previous post. Thanks
>
> > > > > Hello Colin!
>
> > > > > Thanks for your reply. You are right about where the error is
> > > > > occurring, this line is causing the error, @user =
> > > > > User.find(params[:id]).
>
> > > > > I haven't passed the id to the home action, where should i do that
> > and
> > > > > how? Sorry for the noobish question but your help would be gold!
>
> > > > That depends what you are trying to do. If you explain that we may be
> > > > able to help. If you do not know what the params hash is all about
> > > > then you need to work through some basic tutorials. See the rails
> > > > guides athttp://guides.rubyonrails.org/ifyou are using Rails 3 or
> > > >http://guides.rubyonrails.org/v2.3.8/ifusing version 2.3.x. Start
> > > > with Getting Started obviously, then work through the others.
>
> > > > Colin
>
> > > > > On 11 Sep, 12:43, Colin Law <clan...@googlemail.com> wrote:
> > > > >> On 11 September 2010 11:34, Anders_P <and...@andersplanting.se>
> > wrote:
>
> > > > >> > Hello!
> > > > >> > I'm trying to create a list of user "ads" on my home page in my
> > app.
> > > > >> > But I don't get it to work. I'm a rails noob so it might be
> > something
> > > > >> > trivial.
> > > > >> > I'm currently running into this error:
>
> > > > >> > Couldn't find User without an ID
>
> > > > >> There should be a lot more information available with the error,
> > > > >> including where it has failed. The clue may be in the error message
> > > > >> though, it is trying to find a user and there is no id.
>
> > > > >> > My pages controller where to home action is looks like this:
>
> > > > >> > def home
> > > > >> > @title = "Startsidan"
> > > > >> > @user = User.find(params[:id])
>
> > > > >> Possibly this is the problem line, if so then perhaps params[:id] is
> > > > >> nil (hence the error message). Have a look in the log
> > > > >> (log/development.log) and it will tell you what the params are. Are
> > > > >> you passing the id to the home action? Also you could have a look
> > at
> > > > >> the rails guide on debugging to see how to break into your
> > application
> > > > >> using ruby-debug and examine the data at that point.
>
> > > > >> Colin
>
> > > > >> > @ads = @user.Ad.paginate(:page => params[:page])
> > > > >> > end
>
> > > > >> > And my ad partial looks like this:
>
> > > > >> > <div class="ad body_copy">
> > > > >> > <%= image_tag user.avatar.url(:thumb) %>
> > > > >> > <span class="content">
> > > > >> > <%= link_to user.name, user %>
> > > > >> > <%= user.ads.content %>
> > > > >> > </span>
> > > > >> > </div>
>
> > > > >> > Any help would be appreciated! I hope that my explanation is clear
> > > > >> > enough.
>
> > > > >> > Best regards
> > > > >> > Anders
>
> > > > >> > --
> > > > >> > 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@googlegroups.com.
> > > > >> > To unsubscribe from this group, send email to
> > > > rubyonrails-talk+unsubscribe@googlegroups.com<rubyonrails-talk%2Bunsubscrib e@googlegroups.com><rubyonrails-talk%2Bunsubscrib
> > e@googlegroups.com>
> > > > .
> > > > >> > For more options, visit this group athttp://
> > > > groups.google.com/group/rubyonrails-talk?hl=en.
>
> > > > > --
> > > > > 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@googlegroups.com.
> > > > > To unsubscribe from this group, send email to
> > > > rubyonrails-talk+unsubscribe@googlegroups.com<rubyonrails-talk%2Bunsubscrib e@googlegroups.com><rubyonrails-talk%2Bunsubscrib
> > e@googlegroups.com>
> > > > .
> > > > > For more options, visit this group at
> > > >http://groups.google.com/group/rubyonrails-talk?hl=en.
>
> > > > --
> > > > 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@googlegroups.com
> > .
> > > > To unsubscribe from this group, send email to
> > > > rubyonrails-talk+unsubscribe@googlegroups.com<rubyonrails-talk%2Bunsubscrib e@googlegroups.com><rubyonrails-talk%2Bunsubscrib
> > e@googlegroups.com>
> > > > .
> > > > For more options, visit this group at
> > > >http://groups.google.com/group/rubyonrails-talk?hl=en.
>
> > --
> > 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@googlegroups.com.
> > To unsubscribe from this group, send email to
> > rubyonrails-talk+unsubscribe@googlegroups.com<rubyonrails-talk%2Bunsubscrib e@googlegroups.com>
> > .
> > For more options, visit this group at
> >http://groups.google.com/group/rubyonrails-talk?hl=en.
--
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@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home