【发布时间】:2017-10-18 14:17:58
【问题描述】:
这种交付模型的创建应该在附加到用户后工作......
class Delivery < ApplicationRecord
enum kind_of: { package: 0, facturation: 1 }
belongs_to :sender, class_name: 'User'
has_many :orders, foreign_key: "package_delivery_id"
has_many :invoices, foreign_key: "invoices_delivery_id"
has_one :address
has_many :runs, dependent: :destroy
accepts_nested_attributes_for :address
end
...然而,在我的规范中
require 'rails_helper'
describe OrderPolicy do
context 'toegang' do
subject { OrderPolicy.new(user, order) }
let(:user) { create :user }
let(:delivery) { create :delivery, sender: user }
let(:order) { create :order, customer: user, status: 'open', package_delivery: delivery }
let!(:selection) { create( :selection, :product_name => 'Honingpot',
:product_quantity => 4,
:product_price => '5,00',
:product_mail_weight => '460',
:product_sales_tax => 6,
:order => order) }
...
还有这个:
require 'rails_helper'
describe DeliveryPolicy do
context 'toegang' do
subject { DeliveryPolicy.new(user, delivery) }
let(:user) { create :user }
let(:delivery) { FactoryGirl.create :delivery }
...
...我收到错误:
交货必须存在
虽然我在那里有用户。 (optional: true 也不起作用,顺便说一句。)
奇怪的是,我只需要在控制台中添加一个Delivery.create 即可开始工作,只需添加一个sender: ...。
【问题讨论】:
标签: ruby-on-rails database factory-bot