Add REST API for managing and posting to circles
Circles are the conceptual opposite of lists. A list is a subdivision of your follows, a circle is a subdivision of your followers. Posting to a circle means making content available to only some of your followers. Circles have been internally supported in Mastodon for the purposes of federation since #8950, this adds the REST API necessary for making use of them in Mastodon itsef.
This commit is contained in:
parent
a29080256e
commit
6358072bc0
19 changed files with 353 additions and 4 deletions
10
db/migrate/20200718225713_create_circles.rb
Normal file
10
db/migrate/20200718225713_create_circles.rb
Normal file
|
@ -0,0 +1,10 @@
|
|||
class CreateCircles < ActiveRecord::Migration[5.2]
|
||||
def change
|
||||
create_table :circles do |t|
|
||||
t.belongs_to :account, foreign_key: { on_delete: :cascade }, null: false
|
||||
t.string :title, default: '', null: false
|
||||
|
||||
t.timestamps
|
||||
end
|
||||
end
|
||||
end
|
14
db/migrate/20200718225817_create_circle_accounts.rb
Normal file
14
db/migrate/20200718225817_create_circle_accounts.rb
Normal file
|
@ -0,0 +1,14 @@
|
|||
class CreateCircleAccounts < ActiveRecord::Migration[5.2]
|
||||
def change
|
||||
create_table :circle_accounts do |t|
|
||||
t.belongs_to :circle, foreign_key: { on_delete: :cascade }, null: false
|
||||
t.belongs_to :account, foreign_key: { on_delete: :cascade }, null: false
|
||||
t.belongs_to :follow, foreign_key: { on_delete: :cascade }, null: false
|
||||
|
||||
t.timestamps
|
||||
end
|
||||
|
||||
add_index :circle_accounts, [:account_id, :circle_id], unique: true
|
||||
add_index :circle_accounts, [:circle_id, :account_id]
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue