- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个简单的联想:
class Account < ActiveRecord::Base
has_many :users
accepts_nested_attributes_for :users
validates_presence_of :users
end
和
class User < ActiveRecord::Base
belongs_to :account
end
我只想运行一个简单的测试:
describe 'a new', Account do
it 'should be valid' do
Factory.build(:account).should be_valid
end
end
与工厂:
Factory.define :account do |a|
a.name { Faker::Company.name }
end
Factory.define :user do |u|
u.association :account
u.email { Faker::Internet.email }
end
但我总是遇到这个错误:
'a new Account should be valid' FAILED
Expected #<Account id: nil, name: "Baumbach, Gerlach and Murray" > to be valid, but it was not
Errors: Users has to be present
好吧,我设置了正确的关联,但它不起作用...
感谢您的帮助。
最佳答案
您的 Account
模型中的
validates_presence_of :users
是测试失败的原因。您的帐户中至少需要一位用户,才能创建。
我不确定你到底想做什么,所以我给你两种方法来解决这个问题。第一个选择是改变你的工厂:
Factory.define :account do |a|
a.name { Faker::Company.name }
a.users {|u| [u.association(:user)]}
end
Factory.define :user do |u|
u.email { Faker::Internet.email }
end
另一种方法是检查属于方的关联是否存在。所以你需要像这样改变你的模型:
class Account < ActiveRecord::Base
has_many :users
accepts_nested_attributes_for :users
end
class User < ActiveRecord::Base
belongs_to :account
validates_presence_of :account
end
关于ruby-on-rails - 工厂女孩 : association problem testing model which has validates_presence_of accepts_nested_attributes_for,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3109505/
我有一个模型。我想在这个模型中导入一个模块。 在这个模块中,我想为导入它的模型插入一个 validates_presence_of 我想知道是否以及如何做这样的事情: class Ele < Acti
我有三个模型 model1、model12 和 mode2。模型 1 有很多模型 2 到模型 12。 我必须通过 model12 验证 model2 的存在。 当我尝试保存 model1 的编辑记录时
我有多个字段应该使用存在选项进行验证。 我正在尝试使用 validates_presence_of而不是 validates . 这是我的代码 validates_presence_of : firs
我在 Rails 指南中看到,在模型中提到外键并不会真正在数据库中创建外键。 validates_presence_of 是这样吗?迁移时是否需要自己添加NOT NULL约束。 P.S 当我尝试在我的
我正在研究 validates_presence_of 的实际工作原理。假设我有两个模型 class Project 'foo', :project_id => 1334, :project =>
有两个类: class Person include Mongoid::Document field :name embeds_many :addresses end class Addr
我认为问题在于这是一个自定义模型。 错误: undefined method `validates_presence_of' for Calculation:Class 我的模型: class Cal
在 ActiveRecord 模型中,当还使用 validates_length_of 时,使用 validates_presence_of 是否被认为是最佳实践/必要? 例如: class Comp
我在基于 ActiveRecord 的模型中有一个如下所示的关系: belongs_to :foo 我的模型应该始终在其中定义 foo 才能有效。我的问题是,当使用 validates_presenc
重现此问题的正确步骤: prompt> rails test_app prompt> cd test_app prompt> script/generate model event_service p
我正在创建一个 Rails 应用程序,并且有一个名为 User 的模型。在此模型中,我有一个名为 isagirl 的 bool 值。用户必须指定它是否是女孩,这是通过两个单选按钮完成的。在我的模型中我
我有 2 个模型: # user.rb class User :destroy end # profile.rb class Profile # @user.profile => # @user
我理解这些陈述的作用,但不知道如何引用它们。它们存在于一个类中,在该类的方法之外,并执行各种功能。 它们统称为什么? 最佳答案 这些方法实际上只是类方法。试试这个: class Test def
我需要验证模型中的数据,然后使用 rspec 测试该模型: 这是模型中的验证: validates_presence_of :sales_price validates_presence_of :re
情况是这样的。 Gems:rails 3.2,factory_girl 2.5.1 class House has_one :address, :as => :addressable vali
根据Rails 3 release notes, validate_presence_of is deprecated . 但是,我在 the documentation (for v4.0.2) 中
我有一个运行良好的模型: class Weight :user_id 它开始在验证时抛出错误。不是验证错误而是 Ruby 错误: >> w.valid? ActiveRecord::MissingA
我有一个用户模型和一个友谊模型。 class Friendship 'User', :foreign_key=>'sender_id' belongs_to :receiver, :class_n
从 FactoryGirl 2.5.2 升级到 4.5.0 后,belongs_to 关联验证失败。 两个模型文件: class User > user = create(:user) ( ret
我有一个简单的联想: class Account to be valid, but it was not Errors: Users has to be present 好吧,我设置了正确的关联,但
我是一名优秀的程序员,十分优秀!