#ruby #model-view-controller #ruby-on-rails-5
#рубиновый #модель-представление-контроллер #ruby-on-rails-5
Вопрос:
Создание классов и создание моделей — это одно и то же. Например, если бы мне нужно было создать класс продукта, значит, я должен создать модель продукта для того же самого?
Комментарии:
1. Вы имеете в виду, должен ли каждый класс в
models
папке иметь таблицу базы данных? Нет, это не так. Или ты имеешь в виду что-то другое?2. Мне нужно импортировать csv-файл в этот класс, прочитать этот csv-файл и создать с его помощью статьи, и у меня есть модель статьи с таблицей статей в БД.
3. Было бы прекрасно иметь, например,
CSVImporter
класс (чистый Ruby), который не имеет таблицы базы данных (не наследуется отApplicationRecord
), но вместо этого выполняет все, что необходимо для импорта CSV-файлов вProduct
модель. Я все еще не уверен, понимаю ли я ваш актуальный вопрос. Не могли бы вы подробнее рассказать о проблеме, которую вы пытаетесь решить?4. У меня есть блог post, в котором есть таблица заголовка и содержимого db, теперь я хочу добавить класс, который будет импортировать и экспортировать csv-файл для меня. При импорте он будет считывать данные из файла и отображать post, а при экспорте — экспортировать данные post.
Ответ №1:
Да, если вам нужен класс продукта, вы создаете модель продукта. Как только вы создали модель продукта, класс продукта становится доступным.
Комментарии:
1. Я должен импортировать csv в product, и после импорта я должен поместить данные csv-файла в другую таблицу. Как это реализовать.
2. Вы должны принять ответ, если он отвечает на ваш вопрос. Не задавайте другой вопрос..
Ответ №2:
Модель — это немного более сложная сущность, чем просто класс. Модель в rails — это представление активной записи. Вот его содержимое:
Active Record предоставляет нам несколько механизмов, наиболее важным из которых является возможность:
Представлять модели и их данные.
Представляют ассоциации между этими моделями.
Представляют иерархии наследования через связанные модели.
Проверяйте модели, прежде чем они будут сохранены в базе данных.
Выполняйте операции с базой данных объектно-ориентированным способом.
Чтобы создать порядок, вам нужно будет создать таблицу (rails использует миграции для этого случая) и класс модели в этом примере product
. Для достижения этой цели вы можете использовать генераторы rails, следующие действия создадут как модель, так и миграцию
bin/rails generate model Product name:string description:text
дальнейшее чтение.
Генераторы активных моделей записей