不需要在每个 rswag 响应块中调用参数

dont need call parameters in every rswag response block

parameter name: :search, in: :query, type: :string

我不想在第一个响应参数中传递搜索参数,但最终导致错误 注意:如果用 nil 传递参数,在控制器中作为长度为零但仍然存在的字符串存在?是真的

 response('200', 'success') do
    run_test! { |_response| expect('length(address_books)').to match_json(3) }
 end

 response('200', 'search params') do
    let(:search) { 'aa' }
    run_test! { |_response| expect('length(address_books)').to match_json(2) }
  end
Failure/Error: super

     NoMethodError:
       undefined method `search' for #<RSpec::ExampleGroups::***Controller:::Get::success:0x00007fa50f7de068>

使用 required: false 作为您的参数:

parameter name: :search, in: :query, type: :string, required: false