Sha256: ce2c9dd0ada6b5551ad7be1e07019436c27b859a2966cd082008f237bc00039b
Contents?: true
Size: 1.5 KB
Versions: 1
Compression:
Stored size: 1.5 KB
Contents
module ActiveRecord #:nodoc: module ConnectionAdapters #:nodoc: module SchemaStatements #:nodoc: def initialize_schema_information_with_plugins initialize_schema_information_without_plugins begin execute "CREATE TABLE #{PluginAWeek::PluginMigrations::Migrator.schema_info_table_name} (plugin_name #{type_to_sql(:string)}, version #{type_to_sql(:integer)})" rescue ActiveRecord::StatementInvalid # Schema has been initialized end end alias_method_chain :initialize_schema_information, :plugins def dump_schema_information_with_plugins schema_information = [] dump = dump_schema_information_without_plugins schema_information << dump if dump begin plugins = ActiveRecord::Base.connection.select_all("SELECT * FROM #{PluginAWeek::PluginMigrations::Migrator.schema_info_table_name}") plugins.each do |plugin| if (version = plugin['version'].to_i) > 0 plugin_name = ActiveRecord::Base.quote_value(plugin['plugin_name']) schema_information << "INSERT INTO #{PluginAWeek::PluginMigrations::Migrator.schema_info_table_name} (plugin_name, version) VALUES (#{plugin_name}, #{version})" end end rescue ActiveRecord::StatementInvalid # No Schema Info end schema_information.join(";\n") end alias_method_chain :dump_schema_information, :plugins end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
desert-0.1.1 | lib/desert/plugin_migrations/extensions/schema_statements.rb |