1

我有两个模型。一个系列和一个设计。

收藏有_许多设计和设计属于_一个收藏。

除了一件事,一切都很好。用户将创建一个集合,该集合使用 current_user 与他们的 user_id 相关联,就像在我的 Collection 控制器中一样

def create
  @collection = current_user.collections.build(collection_params)
end

这很好用,并且 user_id 将与之相关联。不幸的是,我的问题是在集合中创建设计。因此,用户创建了一个集合,然后转到该集合页面。如果用户创建了该集合,则会出现一个显示添加设计的按钮。添加设计表单出现,您可以提交设计,但没有 user_id 与创建的设计相关联,尽管设计确实与集合相关联。

这是我的设计控制器

def create
  @collection = current_user.collections.find(params[:collection_id])
  @design = @collection.designs.build(design_params)
end

我有这些私人 before_actions

def set_design
  @collection = Collection.find(params[:collection_id])
  @design = @collection.designs.find(params[:id])
end

def find_collection
  @collection = Collection.find(params[:collection_id])
end

有人知道我在做什么错吗?让我知道您是否需要查看其他类似这些模型的东西...

在此先感谢伙计们/姑娘们……祝你好运

4

1 回答 1

0

create 方法应该有这个(这就是答案)

def create
  @collection = current_user.collections.find(params[:collection_id])
  @design = @collection.designs.new(design_params)
  @design.user = current_user
end
于 2013-09-06T03:52:15.007 回答