簡體   English   中英

rails生成模型引用類型

[英]rails generate model references type

我生成了幾個模型,並創建了以下遷移文件。 在第二次遷移中,您將看到2種引用類型。 sub_configuration_id是對item_configurations_model的引用。 這是一個可選的引用(可以為NULL)。

當我查看ItemConfigurationOption模型時,我注意到了以下belongs_to :sub_configuration_id 這是無效的,因為belongs_to:sub_configuration_id不是模型。 我應該如何參考sub_configuration_id的可能關系?

class ItemConfigurationOption < ActiveRecord::Base
  belongs_to :item_configuration
  belongs_to :sub_configuration_id
end

class CreateItemConfigurations < ActiveRecord::Migration
  def change
    create_table :item_configurations do |t|
      t.references :item, index: true
      t.string :name
      t.string :description
      t.integer :type

      t.timestamps
    end
  end
end


class CreateItemConfigurationOptions < ActiveRecord::Migration
  def change
    create_table :item_configuration_options do |t|
      t.references :item_configuration, index: true
      t.references :sub_configuration_id, index: true
      t.string :name
      t.string :value
      t.decimal :price

      t.timestamps
    end
  end
end

將第三行更改為:

belongs_to  :sub_configuration, :class_name => :ItemConfiguration, :foreign_key => :sub_configuration_id

使用以上語法,您可以聲明與ItemConfiguration的關系。 然后,您可以使用sub_configuration方法生成子配置對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM