Hash names with white spaces

Hi all,

I've got a simple problem and I am wondering if it can be solved. In my code I use Hash params name including white spaces (coming from legacy database). They works well in my View, but I am not able to properly use them later in my controller. For instance, in my view I have:

<input id="person name" name="person[first name]" size="30" type="text" />

It works, and checking params confirms that person[first name] it's also posted, but I don't know how to use it in controller. If I try:

print params[:person][:first name]

I always receive errors regarding [:first name] ; so seems that Hash names including white spaces are not accepted....

Any suggestion will be appreciated.

Thanks in advance

Stefano

Hi Stefano,

First of all, migrate your database. Legacy dbs suck and there's no reasons why to preserve them for too long.

About your problem: Both params['first name'] and params[:'first name'] will work.

ciao, tom

Hi Tom,

first of all many thanks for your suggestion.

I cannot migrate from the legacy database because it is still populated by an electronic PLC wich has only MS ACCESS (aargh!) or MS SQL connectors. The same for DB field names. They where defined five years ago and so I must live with them.

Anyway, I will try your hint about quotes usage asap and then post the result here.

Ciao & have a nice day

Stefano

Ok Tom,

like you suggested, both params['first name'] and params[:'first name'] worked for me.

Case solved.

Thanks again

Stefano