On 30 Nov 2008, at 21:47, Nick Hoffman wrote:

>
> On 2008-11-30, at 16:31, David A. Black wrote:
>> Hi --
>>
>> One good way to think about it is: if you did have an extra check,
>> what would it do? In other words, if create gets executed and
>> params[:book] is nil, what would you want to happen?
>
> Hi David. I was thinking about what do in this situation, and reckon
> that any of these is a good approach to take:
> 1) Send a redirect to an appropriate page and return from the method;
> 2) Render an appropriate page, and return from the method;
> 3) Set params[:book] to an empty Hash;
>

My take on this: say you made a mistake somewhere, for example your  
form is submitting a parameter with the wrong name (or the controller  
was using the wrong parameter) and that it wasn't caught by your tests  
(after all your tests won't be checking that the inputs you use in  
your functional test are the same as those that would be produced by a  
browser having rendered your form)

I want:
- to know about it yourself (ie. David's follow up)
- it be obvious to the user that something bad happened (I.e don't  
lull in them into a false sense of security by giving the impression  
the record was created fine whereas you actually just created it off  
the back of an empty Hash. You don't need to display the full grungey  
error page, a 'something bad happened page' is fine usually

Fred

>> And, as a
>> follow-up, does your current error-reporting process already do what
>> you would want to have done in such a case?
>
> I haven't setup error-reporting in the app yet, but it's in my issue
> tracker as another thing to do before releasing a beta!
>
> Cheers,
> Nick
>
> >


--~--~---------~--~----~------------~-------~--~----~
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 [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to