gpt4 book ai didi

ruby-on-rails - 外键中使用的 ActiveRecord 字符串主键

转载 作者:行者123 更新时间:2023-12-04 18:20:06 24 4
gpt4 key购买 nike

可以将 ActiveRecord 的主键覆盖为字符串,并具有自定义类型,例如:

create_table :system_currencies, :primary_key => 'iso_code' do |t|
t.column :iso_code, :string, :limit => 3
end

但是如何在其他引用它的模型中使用这个表/模型呢?
对于引用,ActiveRecord 总是期望外键列以“_id”结尾并且是一个整数值。

这是真的吗?
在 SystemCurrency 使用字符串 iso_code 作为主键的情况下,如何从 Order 模型中引用此类 SystemCurrency 模型?

最佳答案

您可以在联接上指定主键。例如:

class Order < ActiveRecord::Base
belongs_to :system_currency, :primary_key => "iso_code"
end

更多信息可以在 Rails API 中找到 http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-belongs_to

这是你所追求的还是我误解了你的问题?

关于ruby-on-rails - 外键中使用的 ActiveRecord 字符串主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10857609/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com