Могу ли я сохранить список слов Rails в базе данных с ActiveRecord? - PullRequest
1 голос
/ 07 октября 2011

Я создал приложение Rails с несколькими списками слов, которые я хотел бы сохранить в базе данных. Список слов основан на пользователях и создается динамически, то есть он будет изменяться в соответствии с пользовательским вводом. Само приложение будет постоянно читать разные списки, так как я использую его для контроля прав доступа. Кажется, я не могу просто поместить их в базу данных в виде строки.

Итак, вот несколько вопросов.

  1. Может ли переменная типа wordlist хранить в базе данных?
  2. Если я храню строку работы много слов в базе данных, могу ли я прочитать ее и изменить обратно на список слов?

Спасибо всем ~

Ответы [ 2 ]

0 голосов
/ 30 апреля 2012

Если у вас уже есть модель, и вы просто хотите сохранить эти слова дополнительно, вы можете просто использовать serialize :word_list в существующей модели.Где word_list - это текстовый столбец в вашей таблице.Таким образом, вы можете использовать этот word_list в своем приложении rails в качестве массива.

Конечно, это означает, что это не что-то большое, и вы не хотите использовать на нем sql-фильтры.Это можно сделать, но немного проблематично.В этом случае лучше использовать другую модель и сохранить user_id или что-то еще, чтобы указать соединение.rails g model word user_id:integer word:string или как-то так.

0 голосов
/ 07 октября 2011

Вы можете создать таблицу в БД .... скажем, с именем words по крайней мере со столбцами:

  • id integer
  • слово varchar(50)

затем создайте модель ActiveRecord, например:

class Word < ActiveRecord:Base
end

используйте эту модель в вашем контроллере для поиска / создания /изменить / удалить слова из БД

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