Add database row to hold status content type

This commit is contained in:
Thibaut Girka 2019-05-12 20:14:35 +02:00 committed by ThibG
parent c1cf8c1636
commit bfc509f44a
3 changed files with 9 additions and 1 deletions

View File

@ -24,6 +24,7 @@
# local_only :boolean # local_only :boolean
# full_status_text :text default(""), not null # full_status_text :text default(""), not null
# poll_id :bigint(8) # poll_id :bigint(8)
# content_type :string
# #
class Status < ApplicationRecord class Status < ApplicationRecord
@ -74,6 +75,7 @@ class Status < ApplicationRecord
validates_with DisallowedHashtagsValidator validates_with DisallowedHashtagsValidator
validates :reblog, uniqueness: { scope: :account }, if: :reblog? validates :reblog, uniqueness: { scope: :account }, if: :reblog?
validates :visibility, exclusion: { in: %w(direct limited) }, if: :reblog? validates :visibility, exclusion: { in: %w(direct limited) }, if: :reblog?
validates :content_type, inclusion: { in: %w(text/plain text/markdown) }, allow_nil: true
accepts_nested_attributes_for :poll accepts_nested_attributes_for :poll

View File

@ -0,0 +1,5 @@
class AddContentTypeToStatuses < ActiveRecord::Migration[5.2]
def change
add_column :statuses, :content_type, :string
end
end

View File

@ -10,7 +10,7 @@
# #
# It's strongly recommended that you check this file into your version control system. # It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema.define(version: 2019_05_11_152737) do ActiveRecord::Schema.define(version: 2019_05_12_200918) do
# These are extensions that must be enabled in order to support this database # These are extensions that must be enabled in order to support this database
enable_extension "plpgsql" enable_extension "plpgsql"
@ -637,6 +637,7 @@ ActiveRecord::Schema.define(version: 2019_05_11_152737) do
t.bigint "in_reply_to_account_id" t.bigint "in_reply_to_account_id"
t.boolean "local_only" t.boolean "local_only"
t.bigint "poll_id" t.bigint "poll_id"
t.string "content_type"
t.index ["account_id", "id", "visibility", "updated_at"], name: "index_statuses_20180106", order: { id: :desc } t.index ["account_id", "id", "visibility", "updated_at"], name: "index_statuses_20180106", order: { id: :desc }
t.index ["in_reply_to_account_id"], name: "index_statuses_on_in_reply_to_account_id" t.index ["in_reply_to_account_id"], name: "index_statuses_on_in_reply_to_account_id"
t.index ["in_reply_to_id"], name: "index_statuses_on_in_reply_to_id" t.index ["in_reply_to_id"], name: "index_statuses_on_in_reply_to_id"