我正在尝试使用Rspec在我的创建操作上发送帖子,我有简单的控制器逻辑。这是一个api应用程序,我运行我的rspec并返回422状态。我试图弄清楚我的规范是否正在向控制器发送信息。这些是有问题的控制器/规格,我如何将信息插入到create方法中。到目前为止,所有教程似乎都使用与我相同的语法。提前致谢
忽略我工厂中的硬编码user_id,仍在学习工厂并修复依赖工具
#post_controller
def create
if User.exists?(params[:user_id])
@post = Post.new(post_params)
@post.save
render json: @post, status: 200
else
render status: 422
end
end
#spec
it "saves a new post in the database" do
attrs = attributes_for(:post)
post :create, post: attrs
expect(response.status).to eq(200)
end
#factory
FactoryGirl.define do
factory :post do
title "This is a new title"
body "This is the body"
user_id 1
end
答案 0 :(得分:0)
也许是user_id
中的params[:post][:user_id]
?