как получить user_id из формы на контроллер в рельсах - PullRequest
0 голосов
/ 09 декабря 2011

это то, как я показываю электронную почту пользователя в моем раскрывающемся списке

     <%= collection_select(:user, :id, User.all(:conditions => ["company_name=?", $company]), :user_id, :email, :prompt=>'Select a User') %>

это генерируемые параметры:

      Parameters: {"commit"=>"Submit", "utf8"=>"✓", "from_date"=>"December 7, 2011 6:45 AM", "to_date"=>"December 9, 2011 7:45 AM", "user"=>{"user_id"=>"12"}}

После нажатия кнопки отправки он должен отобразить детали с помощью user_id, и моя индексная функция контроллера выглядит следующим образом

      def index
      if (!params[:user][:user_id].nil?)
         user_id = params[:user][:user_id]
         else
        user_id = current_user.id
       end

Но я получаю сообщение об ошибке:

       You have a nil object when you didn't expect it!
       You might have expected an instance of Array.
       The error occurred while evaluating nil.[]

Что может быть не так, пожалуйста, помогите заранее спасибо

1 Ответ

0 голосов
/ 09 декабря 2011

если params [: user] равен nil, «params [: user] [: user_id] .nil повысить исключение» нужно:

unless params[:user].nil? and params[:user][:user_id].nil?
....
else
....
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...