Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 这个默认RSpec语句是什么意思?_Ruby On Rails_Ruby On Rails 3_Rspec_Rspec2 - Fatal编程技术网

Ruby on rails 这个默认RSpec语句是什么意思?

Ruby on rails 这个默认RSpec语句是什么意思?,ruby-on-rails,ruby-on-rails-3,rspec,rspec2,Ruby On Rails,Ruby On Rails 3,Rspec,Rspec2,这句话是什么意思这些在任何地方都不会被实例化为有任何意义 整个声明如下: User.should_receive(:update_attributes).with({'these' => 'params'}) 我这样说是因为我遇到了一个错误: describe "with valid params" do it "updates the requested user" do User.should_receive(:find).with("37") { mock_

这句话是什么意思<代码>这些在任何地方都不会被实例化为有任何意义

整个声明如下:

User.should_receive(:update_attributes).with({'these' => 'params'})
我这样说是因为我遇到了一个错误:

  describe "with valid params" do
    it "updates the requested user" do
      User.should_receive(:find).with("37") { mock_user }
      User.should_receive(:update_attributes).with({'these' => 'params'})
      put :update, :id => "37", :user => {'these' => 'params'}
    end

这是来自前面提到的场景。

它是说在运行任何测试期间,应该在
用户
模型上调用方法
update_attributes
,参数为
{'this'=>'params'}

在执行过程中,预计基本上会发生以下情况:

unknown attribute: these

更多信息:

您不必替换哈希({'this'=>'params'})。把它看作是一份合同。我说过,当我放置时,我的对象update\u attributes模型应该接收以下散列。在下一行中,您调用update方法并检查契约。

对,但是什么是
this
,什么是
params
?这只是一个示例哈希。您可以用控制器期望的任何内容替换它。例如,您可能正在更新用户名,因此它将是
({:first\u name=>“something”,:last\u name=>“else”})
User.update_attributes({'these' => 'params'})