我有一個factor
控制器,其採用因子值對於兩種不同類型的因素滑軌檢查是否在控制器
- 主要因素
- 次要因素
存在PARAMS和我將它們作爲params如下:
class FactorController < AdminController
def create
if primary_factor_params ## LINE 5
do something
elsif secondary_factor_params
do something else
end
end
def primary_factor_params
params.require(:primary).permit(:user_id, ## LINE 70
:primary_factors)
end
def secondary_factor_params
params.require(:secondary).permit(:user_id,
:secondary_factors)
end
end
但在上面的每當我嘗試通過一個secondary_factor
我得到以下錯誤:
ActionController::ParameterMissing (param is missing or the value is empty: primary):
app/controllers/factors_controller.rb:70:in `primary_factor_params' app/controllers/api/v1/admin/factors_controller.rb:5:in `create'
所以對我來說似乎這個錯誤就要到了,因爲我沒有任何值,在這種情況下primary_factor_params
,這就是方式,它拋出,因爲第一次的錯誤如果條件。
我已經試過:
primary_factor_params.exists?
primary_factor_params.has_key?(:primary_factors)
....
但他們都拋出了同樣的錯誤,因爲primary_factor_params
不存在。有沒有一種方法來測試這個沒有丟失的參數錯誤?
是的,這非常有意義,我削除的事實,我需要測試'params'因爲'primary_factor_params'不會在這種情況下,存在於所有 – anonn023432