我正在使用产品模型构建 rails 3 应用程序。我一直在尝试找到一种使用产品 ID 号作为标识符的方法,而不是使用模型默认 ID。
我最初尝试使用该to_param
方法,但无法使其正常工作。
然后我使用产品 ID 号而不是主键重建了我的数据库,如下所示:
class CreateProducts < ActiveRecord::Migration
def change
create_table :products, :id => false, :primary_key => :prod_id do |t|
t.string "prod_id"
t.string "upc"
t.text "title"
t.text "description"
t.timestamps
end
end
end
并将我的代码更改为使用 prod_id 查找/创建。这似乎工作得很好,但是我希望更多地了解这可能产生的任何后果,以及不使用主键的缺点可能是什么。