Rails: как представление базы данных работает с активными записями
Я новичок в Rails. В одном исходном коде я вижу, что кто-то создает некоторые грабли, связанные с созданием представления. Например:
desc 'create statistic data'
task create_product_statistics: do
ActiveRecord::Base.connection.execute <<-SQL
CREATE VIEW product_statistics AS
// some complex sql query
SQL
end
Как я вижу во всем проекте, у меня есть таблица с именем ProductStatistic
, Это все. Поскольку я не нашел ни одного документа по этому поводу, поэтому я не знаю, как приведенный выше код сопоставляется с кодовой базой rails. Пожалуйста, дайте мне знать, как создание базы данных влияет на запрос активной записи. Это похоже на активную запись, видят базу данных как обычную таблицу?
Спасибо
1 ответ
Решение
Вы можете использовать представление, как и любую другую таблицу, подобную этой.
class ProductStatistics < ApplicationRecord
self.table_name = 'product_statistics'
end
... in some controller
ProductStatistics.where(....)