我有點問題。我一直在開發一個Rails應用程序,並遇到了一個我無法修復的問題。Rails 2 way association not functioning
截至目前,我的應用程序允許用戶輸入產品詳細信息到數據庫(存儲在「產品表」中)。下面是我正在使用的數據庫的模式。
ActiveRecord::Schema.define(version: 20140126073333) do
create_table "ijns", force: true do |t|
t.integer "number"
t.integer "product_id"
t.datetime "created_at"
t.datetime "updated_at"
t.integer "quantity"
end
add_index "ijns", ["number"], name: "index_ijns_on_number"
create_table "products", force: true do |t|
t.string "name"
t.datetime "created_at"
t.datetime "updated_at"
t.integer "ijn_id"
end
add_index "products", ["name"], name: "index_products_on_name"
end
還有一個名爲'ijns'的表,它爲每個產品分配一個唯一的標識符。這個ijn並沒有被有意地作爲主鍵,因爲我不希望它是一個自動遞增的值。
的B/W和IJN產品的關係爲:
甲產物的has_many ijns和 belongs_to的一個產品相關的IJN。
這裏是我的產品
class Product < ActiveRecord::Base
has_many :ijns
validates :name, presence: true, length: { minimum: 10 }, uniqueness: true
end
爲日本海軍型號的模型。
class Ijn < ActiveRecord::Base
belongs_to :product
validates :number, presence: true, uniqueness: true, length: { is: 4 }, numericality: { only_integer: true }
validates :product_id, presence: true
validates :quantity, presence: true
end
我能夠從日本海軍方面取得的關聯,即,我能夠通過使用類似訪問的產品型號中的字段:
@ijn.product.name
但我不是能夠從產品型號中訪問'ijns'表的'數字'字段
我希望我在解釋我的問題時已經很清楚。如果需要其他信息,請告訴我。急切地等待一些回覆! :)
月1日編輯:
當我看到在sqlite3的數據庫瀏覽我的「產品」表中,ijn_id列存在,但由於某些原因沒有條目。下面是截圖:
你有什麼試過?如果你寫'@ product.ijns',你會得到什麼?一個'NoMethodError'或其他東西? –
Yeah Robin,我得到一個NoMethodError – vjrngn