gpt4 book ai didi

ruby - 关联对象没有主键

转载 作者:数据小太阳 更新时间:2023-10-29 08:43:16 29 4
gpt4 key购买 nike

在使用 Sequel 时,我仍然找不到解决关联工厂问题的解决方案。

我有两个模型依赖于 one_to_many,这与 Active Record 中的 has_manymany_to_one 相同,这与Active Record 中的 belongs_to

这里是定义的工厂:

FactoryGirl.define do
to_create { |instance| instance.save }
factory :post do
title "some title"
end
end

FactoryGirl.define do
to_create { |instance| instance.save }
factory :comment do
content "some content"
association :post, strategy: :build
end
end

当运行 build(:comment) 时,它失败了:

Associated object does not have a primary key. 

有没有人知道如何解决这个问题?我总是可以先构建/创建一个帖子,然后在评论中签名,但这很乏味。不仅如此,我还必须删除 association :post, strategy: :build 并使用一些整数随机值。

我正在使用:

  • factory_girl_rails 4.8.0
  • ruby 2.4.0
  • sequel-rails 0.9.15
  • 续集 4.45.0

最佳答案

Sequel 不支持将关联对象添加到未保存的对象,除非您使用 nested_attributes 插件同时创建两者。因此,除非 FactoryGirl 有特定的代码来处理这个问题,否则它可能无法正常工作。

关于ruby - 关联对象没有主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43590251/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com