gpt4 book ai didi

ruby-on-rails - 从 FactoryGirl 中删除属性

转载 作者:行者123 更新时间:2023-12-02 06:43:57 33 4
gpt4 key购买 nike

我想测试如果缺少一个属性,我的模型将不允许创建实例,所以我尝试了以下方法:

 test "should not save without a url" do
attrs = FactoryGirl.attributes_for(:page).delete(:url)
page = Page.new(attrs)
assert !page.save
end

FactoryGirl.define do
factory :page do
url 'http://testpage.com'
background 'rgb(255,255,255)'
end
end

但是,我收到 NoMethodError: undefined method stringify_keys' for "http://testpage.com":String

我在这里缺少什么?或者说正确的做法是什么?

最佳答案

其实你想看一下方法exceptdelete方法将返回删除键的值,而不是修改后的哈希值。

所以,你想要这个:

attrs = FactoryGirl.attributes_for(:page).except(:url)

关于ruby-on-rails - 从 FactoryGirl 中删除属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20290566/

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