Использовать базу данных множественной схемы Postgres в Rails
Я разрабатываю приложение с несколькими приложениями, следуя этой статье. Проблема в том, что я запускаю все миграции в первый раз. В файле schema.rb
представлены только таблицы для общедоступной схемы, но что происходит с другими схемами? и как я могу создать другие схемы с другой структурой для public
Я не хочу использовать драгоценные камни.
См. пример ниже
Таблица, создаваемая для общедоступной схемы
class CreatePerspectives < ActiveRecord::Migration
include MultiSchema
def up
with_in_schemas :only => :public do
# Create table perspectives
end
end
def down
with_in_schemas :only => :public do
drop_table :prespectives
end
end
end
Таблица, создаваемая для частных схем
class CreateObjectives < ActiveRecord::Migration
include MultiSchema
def change
with_in_schemas :except => :public do
# Create objectives table
end
end
end
schema.rb
ActiveRecord::Schema.define(version: 20130810172443) do
create_table "perspectives", force: true do |t|
t.string "name"
t.datetime "created_at"
t.datetime "updated_at"
end
end
Ответы
Ответ 1
Знаешь ли ты квартиру? https://github.com/influitive/apartment
В этом году я использовал проект, который поддерживает множественную схему с postgresql. Все документировано и прост в использовании. И вы можете выбрать режим промежуточного ПО. Например, при доступе к домену customer.applicationdomain.com приложение может выбрать для вас правильную схему. Кстати, вы можете использовать фоновые задания с sidekiq тоже.