Не могу получить доступ к данным рельсов - PullRequest
0 голосов
/ 03 февраля 2011

Последние пару часов я медленно сходил с ума, пытаясь что-то выяснить.Я отправляю форму в рельсах, все работает нормально, пока я не пытаюсь получить доступ к параметрам.В консоли я вижу следующее:

Parameters: {"authenticity_token"=>"3mdEW2lHhkzpZbDsJCu8ZEV/wbq2YB/ztNR0RLTMZDs=", "utf8"=>"✓", "project"=>{"name"=>"woeij", "client"=>"iwej", "description"=>"oiejdoiew woeij"}, "id"=>"13"}

Как вы видите, я посылаю имя, клиента, описание и идентификатор.Я могу получить точный доступ к идентификатору с помощью чего-то вроде:

@id = params[:id]

Однако, когда я пытаюсь получить доступ к имени, клиенту или описанию таким же образом, они все пусты.Если я сделаю:

@project = params[:project]

Я получу:

namewoeijclientiwejdescriptionoiejdoiew woeij 

Не возражает ли кто-нибудь объяснить, что я делаю неправильно?И почему я не могу просто получить «горе», когда я делаю:

@name = params[:name]

Извините за глупый вопрос, большое спасибо, как всегда.

Ответы [ 2 ]

8 голосов
/ 03 февраля 2011

Атрибуты вложенные, делайте

params[:project][:name]

для получения имени.

Действительно крутой инструмент в консоли rails - это y: если вы наберете y params, они будут представлены очень красиво.

3 голосов
/ 03 февраля 2011

У вас есть хеш внутри хеша.После того, как вы выполните:

@project = params[:project]

У вас есть все параметры вашего проекта внутри этого хэша.Вы можете выбрать их так:

@project[:name]   #=> "woeij"
@project[:client] #=> "iwej"

Вы также можете выбрать их за один раз, как это:

params[:project][:description] #=> "oiejdoiew woeij"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...