I've been away from rails for a while but now wanna get back into it and
I guess my rails foo has got rusty. I've been wrestling with this
simple! problem for the weekend and I can't fix it - driving me nuts.
Real cry for help.
I have a Course model which contains price_per_week.
I'd like one page where a user selects a course and a duration and then
submits this, the next page will look up the Course price and multiply
by the duration and display a quote. EASY huh, not for me this weekend !
All I need for now to get back on track is just to get the basics, how
do I pass the bl*^(*^dy Course through to the price screen.. Please see
the code below. I'd be most grateful if someone can point me in the
right direction..
I recognise that the I am not passing any params at the moment from
this...
<%= link_to 'Get a Price!', :action => 'price', :id => @course %> <---
this is wrong ?
But how do I do it ?
I'll be happy just to get the Course name displayed for now, come back
to the pricing later.
You've already passed the first screen's state to the next screen. In
the next screen, you simply needs to put hidden fields in the form in
order to preserve the previous state, so that the POST handler will
have all the data.
Should be:
@selected_course = params[:course][:id]
Otherwise you will be accessing the 'params' hash with the return
value of the 'course' function as key, and you will be accessing the
returned hash with the return value of the 'id' function as key.
ActionView::TemplateError (You have a nil object when you didn't expect
it!
The error occurred while evaluating nil.name) on line #12 of
invoice/price.html.erb:
9:
10: <br>
11:
12: <%= @selected_course.name %>
13:
I don't think it's actually passing the id of the course.
You think that part (the linkto) is correct then?
To be clear, this is the error I see when the button is clicked...
All of this was based on the assumption that @course was an instance
of course. Is it really ? What you are getting suggests it isn't ( if
so what is it)
I don't think it's actually passing the id of the course.
You think that part (the linkto) is correct then?
To be clear, this is the error I see when the button is clicked...
All of this was based on the assumption that @course was an instance
of course. Is it really ? What you are getting suggests it isn't ( if
so what is it)
Fred
The lines of code below are meant to get me the params I need?
Is the collection select maybe wrong? or the link_to, or maybe both?
either way I dont see the params being passed by the link_to.
I don't think it's actually passing the id of the course.
You think that part (the linkto) is correct then?
To be clear, this is the error I see when the button is clicked...
All of this was based on the assumption that @course was an instance
of course. Is it really ? What you are getting suggests it isn't ( if
so what is it)
Fred
The lines of code below are meant to get me the params I need?
Is the collection select maybe wrong? or the link_to, or maybe both?
What is wrong is that you expect a link to submit parameters from a
form element. That's not what links do. You need a form.