aboutsummaryrefslogtreecommitdiff
path: root/interfaces/ruby/models/tag.rb
diff options
context:
space:
mode:
Diffstat (limited to 'interfaces/ruby/models/tag.rb')
-rw-r--r--interfaces/ruby/models/tag.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/interfaces/ruby/models/tag.rb b/interfaces/ruby/models/tag.rb
new file mode 100644
index 0000000..9c24b6c
--- /dev/null
+++ b/interfaces/ruby/models/tag.rb
@@ -0,0 +1,26 @@
+class PostTagLink < ActiveRecord::Base
+ belongs_to :post
+ belongs_to :tag
+end
+
+class CreatePostTagLinkTable < ActiveRecord::Migration[6.0]
+ def change
+ create_table :post_tag_links do |t|
+ t.references :post, foreign_key: true, index: true
+ t.references :tag, foreign_key: true, index: true
+ end
+ end
+end
+
+class Tag < ActiveRecord::Base
+ belongs_to :post
+ validates_presence_of :name
+end
+
+class CreateTagTable < ActiveRecord::Migration[6.0]
+ def change
+ create_table :tags do |t|
+ t.string :name, null: false
+ end
+ end
+end