diff options
author | Philip Arndt <parndt@gmail.com> | 2011-03-04 12:25:18 +1300 |
---|---|---|
committer | Philip Arndt <parndt@gmail.com> | 2011-03-04 12:25:18 +1300 |
commit | a058a24e90d46cb0efd0654c7d3385db23ef3ba3 (patch) | |
tree | c48c79873846c6160012cf731de407ad2cc08694 /db/migrate | |
parent | 7ac190f9ddbd572129018f6897f28a8aad9d4401 (diff) | |
download | refinerycms-blog-a058a24e90d46cb0efd0654c7d3385db23ef3ba3.tar.gz refinerycms-blog-a058a24e90d46cb0efd0654c7d3385db23ef3ba3.tar.bz2 refinerycms-blog-a058a24e90d46cb0efd0654c7d3385db23ef3ba3.zip |
Renamed seed and blog structure migration, removed name option from generator, regenerated gemspec.
Diffstat (limited to 'db/migrate')
-rw-r--r-- | db/migrate/1_create_blog_structure.rb | 54 | ||||
-rw-r--r-- | db/migrate/1_create_singular_name.rb | 57 |
2 files changed, 54 insertions, 57 deletions
diff --git a/db/migrate/1_create_blog_structure.rb b/db/migrate/1_create_blog_structure.rb new file mode 100644 index 0000000..197efb1 --- /dev/null +++ b/db/migrate/1_create_blog_structure.rb @@ -0,0 +1,54 @@ +class CreateBlogStructure < ActiveRecord::Migration + + def self.up + create_table :blog_posts, :id => true do |t| + t.string :title + t.text :body + t.boolean :draft + t.datetime :published_at + t.timestamps + end + + add_index :blog_posts, :id + + create_table :blog_comments, :id => true do |t| + t.integer :blog_post_id + t.boolean :spam + t.string :name + t.string :email + t.text :body + t.string :state + t.timestamps + end + + add_index :blog_comments, :id + + create_table :blog_categories, :id => true do |t| + t.string :title + t.timestamps + end + + add_index :blog_categories, :id + + create_table :blog_categories_blog_posts, :id => false do |t| + t.integer :blog_category_id + t.integer :blog_post_id + end + + add_index :blog_categories_blog_posts, [:blog_category_id, :blog_post_id], :name => 'index_blog_categories_blog_posts_on_bc_and_bp' + + load(Rails.root.join('db', 'seeds', 'refinerycms_blog.rb').to_s) + end + + def self.down + UserPlugin.destroy_all({:name => "refinerycms_blog"}) + + Page.delete_all({:link_url => "/blog"}) + + drop_table :blog_posts + drop_table :blog_comments + drop_table :blog_categories + drop_table :blog_categories_blog_posts + end + +end diff --git a/db/migrate/1_create_singular_name.rb b/db/migrate/1_create_singular_name.rb deleted file mode 100644 index 9b93c96..0000000 --- a/db/migrate/1_create_singular_name.rb +++ /dev/null @@ -1,57 +0,0 @@ -@refinerycms_blog_tables = [{ - :table_name => 'blog_posts', - :attributes => [ - Rails::Generators::GeneratedAttribute.new('title', 'string'), - Rails::Generators::GeneratedAttribute.new('body', 'text'), - Rails::Generators::GeneratedAttribute.new('draft', 'boolean'), - Rails::Generators::GeneratedAttribute.new('published_at', 'datetime') - ], :id => true -},{ - :table_name => 'blog_comments', - :attributes => [ - Rails::Generators::GeneratedAttribute.new('blog_post_id', 'integer'), - Rails::Generators::GeneratedAttribute.new('spam', 'boolean'), - Rails::Generators::GeneratedAttribute.new('name', 'string'), - Rails::Generators::GeneratedAttribute.new('email', 'string'), - Rails::Generators::GeneratedAttribute.new('body', 'text'), - Rails::Generators::GeneratedAttribute.new('state', 'string') - ], :id => true -},{ - :table_name => 'blog_categories', - :attributes => [ - Rails::Generators::GeneratedAttribute.new('title', 'string') - ], :id => true -},{ - :table_name => 'blog_categories_blog_posts', - :attributes => [ - Rails::Generators::GeneratedAttribute.new('blog_category_id', 'integer'), - Rails::Generators::GeneratedAttribute.new('blog_post_id', 'integer') - ], :id => false -}] - -class Create<%= singular_name.camelize %> < ActiveRecord::Migration - - def self.up<% @refinerycms_blog_tables.each do |table| %> - create_table :<%= table[:table_name] %>, :id => <%= table[:id].to_s %> do |t| -<% table[:attributes].each do |attribute| -%> - t.<%= attribute.type %> :<%= attribute.name %> -<% end -%> - <%= 't.timestamps' if table[:id] %> - end - - <%= "add_index :#{table[:table_name]}, :id" if table[:id] %> -<% end -%> - load(Rails.root.join('db', 'seeds', 'refinerycms_blog.rb').to_s) - end - - def self.down - UserPlugin.destroy_all({:name => "refinerycms_blog"}) - - Page.delete_all({:link_url => "/blog"}) - -<% @refinerycms_blog_tables.each do |table| -%> - drop_table :<%= table[:table_name] %> -<% end -%> - end - -end |