2012-01-05 167 views

回答

47

您確實需要手動將user_id列添加到Product模型。如果尚未創建模型,請將列列表中的引用添加到模型生成器。例如:

rails generate model Product name:string price:decimal user:references

或者,如果您Product模型已經存在,你必須做的是:

rails g migration addUserIdToProducts user_id:integer

這將產生一個移民,妥善的user_id列添加到products表。通過正確命名的列(user_id),Rails將知道這是您的外鍵。

+0

嘿,我正在使用'postgresql',並使用您提到的第一種方法創建了模型。使用'user:references'。現在當我嘗試刪除'user'模型對象時,它給了我'PG :: ForeignKeyViolation:'錯誤。我的期望是,當我刪除一個用戶時,應該刪除'user'下的所有'products'。 PS:我在'Product'模型中有'belongs_to:user,dependent :: destroy'。 我是一個初學者在軌道:) – 2017-05-30 10:45:29

相關問題