aboutsummaryrefslogtreecommitdiffstats
path: root/db/migrate
diff options
context:
space:
mode:
Diffstat (limited to 'db/migrate')
-rw-r--r--db/migrate/1_create_blog_structure.rb54
-rw-r--r--db/migrate/1_create_singular_name.rb57
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