2015-08-20 4 views
0

Я создал таблицу «дети», которая будет хранить имена в виде строк и чисел в виде целых чисел. Вставка значений вручную с использованием SQL-запроса в терминале отлично работает.Вставка данных формы в таблицу SQLite с использованием Rails

Я новичок в Rails и не могу найти простых примеров, показывающих, как захватывать данные из формы html и вставлять их в таблицу SQLite.

Вот форма я имею дело с:

<form> 
    Kid #1 Name:<input type="text"><br> 
    Favorite Number:<input type="text"><br> 

    Kid #2 Name:<input type="text"><br> 
    Favorite Number:<input type="text"><br> 

    <input type="submit" value="Submit"> 
</form> 

Что бы контроллеры, модели, и представления выглядят как для того, чтобы вставить данные из формы? Это 2 вставки в таблицу, но 1 форма.

ответ

1

Создайте в контроллере метод для ввода записей в БД. Сделайте способ, скажем add_kids_data в вашем KidsController. Таким образом, ваш URL-адрес для формы будет /kids/add_kids_data. Соответственно присвойте имена в текстовые поля html. Скажем, вы называете поля kid1, num1, kid2, num2, значения будут доступны в контроллере как params[:kid1] и так далее. Вы хотели бы создать метод в вашей модели, который фактически создаст запись в вашей БД. Затем вы можете просто вызвать метод в своей модели из контроллера с параметрами, которые вы получили от формы.

This RailsGuides post on form helpers предоставит вам пошаговую информацию о том, что вам нужно сделать для создания формы.

+0

Вы можете сделать это разными способами, но вся идея Rails заключается в том, что если вы будете следовать соглашениям Rails для взаимодействия с базами данных, это сэкономит вам массу работы. Вы можете начать читать это руководство http://edgeguides.rubyonrails.org/getting_started.html#getting-up-and-running. В параграфе 5.2 вы найдете форму и объяснение того, что Rails сделает для вас. Кроме того, чтение Rails и CRUD-действия может быть полезным. – Mauddev

Смежные вопросы