丢失了使用rails_admin分配的最后一个对象

时间:2015-04-25 12:10:15

标签: ruby-on-rails rails-admin

我使用 Rails_admin 在我的模型上使用CRUD功能。我有两个模型类别项目project可以有一个category,但category可以包含projectproject。问题是,当我创建了两个不同的category s时,前一个project丢失了关系,只有最后一个创建了它。如何使用相同的category创建不同的class Category < ActiveRecord::Base belongs_to :project, :inverse_of => :category end

我的模特是:

分类

class Project < ActiveRecord::Base
  has_one :category, :dependent => :destroy, :inverse_of => :project

  def category_id
    self.category.try :id
  end
  def category_id=(id)
    self.category = Category.find_by_id(id)
  end

end

项目

5

1 个答案:

答案 0 :(得分:0)

您真正想要的关系是:

  • 项目belongs_to类别
  • 类别has_many项目

您在模型文件中为Category声明的belongs_to关系表示每个Category对象只能绑定到一个Project对象。

请查看http://guides.rubyonrails.org/association_basics.html#choosing-between-belongs-to-and-has-one,了解有关您将使用的两种关系的更多信息。