Как отправить список значений в Ruby Sinatra? - PullRequest
1 голос
/ 16 августа 2011

У меня есть простая форма, где есть список:

     <form method ="post" action ="">
     <select>Select subject
        <option value="1">Maths</option>  
        <option value="2">Science</option>
     </select>
      <input type="submit" name="Submit" />

Мой вопрос: если я выберу опцию Maths, я бы хотел, чтобы значение отправлялось, например, / 1. Что должно быть написано в действии? Как должен быть написан маршрут?

       get '' do 


       end

Ответы [ 2 ]

6 голосов
/ 16 августа 2011

Ваш маршрут может выглядеть примерно так:

post '/subject' do
  @subject = params[:subject]
  # do whatever you want now
end

Но вам нужно дать вашему тегу select имя, а вашему form действие:

<form method="post" action="/subject">
    <select name="subject">
    <!-- etc etc -->

Также взгляните на похожие вопросы.

0 голосов
/ 17 августа 2011

мы склонны рассматривать запросы как GET (имеет смысл, это в конце концов получение информации), а не как POST, который (фактически не изменяет данные) все же отвечает страницей результатов

общим (грубый) шаблон, который мы часто видим, состоит в том, чтобы переписать (в js или redirect) форму

GET '/ search /: q1 / и /: q2' do // результат поиска, отфильтрованный по q1 и q2 end

, что тоже довольно аккуратно

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