Ruby on rails 没有主键的链接表的Rails路由?

Ruby on rails 没有主键的链接表的Rails路由?,ruby-on-rails,routes,Ruby On Rails,Routes,我有一个如下所示的链接表: create_table "links", :id => false, :force => true do |t| t.integer model1_id t.integer model2_id t.string someotherinfo end match '/links/:model1_id/:model2_id/' => buggable_links#validate 我目前定义的路线如下: create_table "lin

我有一个如下所示的链接表:

create_table "links", :id => false, :force => true do |t|
  t.integer model1_id
  t.integer model2_id
  t.string someotherinfo
end
match '/links/:model1_id/:model2_id/' => buggable_links#validate
我目前定义的路线如下:

create_table "links", :id => false, :force => true do |t|
  t.integer model1_id
  t.integer model2_id
  t.string someotherinfo
end
match '/links/:model1_id/:model2_id/' => buggable_links#validate
似乎我应该能够做一些更像
resources
的事情,而不是写出所有
match
语句。让rails在没有单一主键的模型上生成资源路由(例如URL包含两个ID)的正确方法是什么


注意,我知道一个可能的答案是“只需添加一个自动递增的pk”。在中讨论了这种方法的优缺点,但是出于这个问题的目的,让我们假设我想保持DB模式不变。

这是正确的方法


您应该添加的唯一内容是在
buggable_链接的
资源中添加
验证
函数作为get方法。

可能使用
来设置参数