以下 Rails 模型在 Sequel 中应该是什么样子?

How is the following Rails model should look like in Sequel?

我有以下两个模型:

class Dispute < ApplicationRecord
  belongs_to :accuser,    class_name: 'User', optional: true
  belongs_to :defendant,  class_name: 'User', optional: true
end
class User < ApplicationRecord
end

这是 Dispute 的迁移:

class CreateDisputes < ActiveRecord::Migration[5.0]
  def change
    create_table :disputes do |t|
      t.references :accuser
      t.references :defendant
    end
  end
end

这就是他们在 Rails 中的表现:

Dispute.first.accuser
# => <# User>
Dispute.first.defendant
# => <# User>

在Sequel中,我应该是to use many_to_one,但这是否意味着Sequel User模型应该有一个对应的one_to_many?似乎无法正常工作。

这应该有效:

Sequel.migration do
  change do
    create_table(:disputes) do
      primary_key :id
      foreign_key :accuser_id, :users
      foreign_key :defendant_id, :users
    end
  end
end

class Dispute < Sequel::Model
  many_to_one :accuser, :class=>:User
  many_to_one :defendant, :class=>:User
end