2016-12-26 45 views
0

我有一个简单的创建,我正经过一些PARAMS行动,但得到未定义的方法许可的错误:NoMethodError(未定义的方法'许可证”的‘测试’:字符串):

NoMethodError(未定义的方法'许可证”的 “twest”:字符串):

下面是我收到的请求PARAMS:

{"email"=>"[email protected]", "promo_code"=>"test", "description"=>"this is test", "action"=>"create"} 

和promo_code_params

def promo_code_params 
    params.require(:promo_code).permit(:email,:code, :description) 
end 

创建操作

def create 
@promo_code = @reward.promo_codes.new(promo_code_params) 
# code 
# code 
end 
+0

请发表您的查看代码?以及在控制器中的“新”行动 –

回答

0

你PARAMS哈希不在预期的方式你promo_code_params定义。它应该看起来像:

{ "promo_code" => {"email"=>"[email protected]", "code"=>"test", "description"=>"this is test"}, "action"=>"create"} 

,或者你promo_code_params应该是这样的:

def promo_code_params 
    params.permit(:email,:promo_code,:description) 
end 

希望帮助您了解什么是错的。

+0

这有很大的帮助 – Nikhil

相关问题