以下のように自分自身に対して多対多の関係を持つモデルを使っています。

models/user.rb

has_many :friendships
has_many :friends, through: :friendships

models/friendship.rb

belongs_to :user
belongs_to :friend, class_name: "User"

このFriendshipを作成する時にcreate_tableforeign_key: trueの制約をつけると当然ですがエラーになってしまいます。

create_table :friendships do |t|
  t.references :user, foreign_key: true
  t.references :friend
end

ですので、以上のように制限無しで作成してしまっているのですが

このfriendshipsfriend_idカラムに外部キー制約を追加するにはどのようにすればよいのでしょうか?