Как использовать params [: search] как входные данные в rails? - PullRequest
0 голосов
/ 26 ноября 2018

Я хочу использовать params [: search] в качестве входных данных. У меня ниже код в контроллере.

def search
@student = Student.search(params[:search])
    if @student.present?
  flash[:notice] = 'Student is available,Please create'
  redirect_to :action => :new
 end
 if @student.nil?
  @studentId=params[:search] //Not working
 # @studentId="123"//working 
end
end

Над кодом, если я использую params [: search], я получаю ошибку. Но если яиспользуя @ studentId = "123", который работает нормально. Как передать параметры в качестве входных данных?

1 Ответ

0 голосов
/ 26 ноября 2018

Я предполагаю, что у вас есть файл вида search.html.erb file, и вы реализуете метод search в StudentsController:

Убедитесь, что при переходе к файлу вида у него есть параметр поискав URL: Пример: localhost:3000/search?search=123.Таким образом, @studentId = params[:search] будет @studentId = "123", и вы можете работать с ним без ошибок.Но если вы не передадите search param в URL, тогда @studentId будет nil, и вы получите ошибку.Пример: Просто localhost:3000/search выдаст вам ошибку.

Также я думаю, что вам нужно использовать @student = Student.find(params[:search]) вместо @student = Student.search(params[:search])

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...