about summary refs log tree commit diff
path: root/db/migrate/20171009222537_create_keyword_mutes.rb
diff options
context:
space:
mode:
authorDavid Yip <yipdw@member.fsf.org>2017-10-09 17:28:28 -0500
committerDavid Yip <yipdw@member.fsf.org>2017-10-21 14:53:41 -0500
commit9093e2de7a133470eec1049a13465f81928d0119 (patch)
treefd8264bbc6312cd599031cfdd944564b33008e4e /db/migrate/20171009222537_create_keyword_mutes.rb
parentd589dd7cd0512b558412a38a935b1a9cdcbf0ce7 (diff)
Add KeywordMute model.
Gist of the proposed keyword mute implementation:

Keyword mutes are represented server-side as one keyword per record.
For each account, there exists a keyword regex that is generated as one
big alternation of all keywords.  This regex is cached (in Redis, I
guess) so we can quickly get it when filtering in FeedManager.
Diffstat (limited to 'db/migrate/20171009222537_create_keyword_mutes.rb')
-rw-r--r--db/migrate/20171009222537_create_keyword_mutes.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/db/migrate/20171009222537_create_keyword_mutes.rb b/db/migrate/20171009222537_create_keyword_mutes.rb
new file mode 100644
index 000000000..ee690e799
--- /dev/null
+++ b/db/migrate/20171009222537_create_keyword_mutes.rb
@@ -0,0 +1,11 @@
+class CreateKeywordMutes < ActiveRecord::Migration[5.1]
+  def change
+    create_table :keyword_mutes do |t|
+      t.references :account, null: false
+      t.string :keyword, null: false
+      t.timestamps
+    end
+
+    add_foreign_key :keyword_mutes, :accounts, on_delete: :cascade
+  end
+end