[英]Rails - ActionController::Parameters to string
有两个参数并且正在得到一个这样的参数
v = (params.require(:service).permit(:title))
这个v的值像这样的{"title"=>"test,kil"}
,我想获得字符串右边的值,但是都是徒劳的。 该概念试图强加之后,我将有@test= "test,kil"
任何帮助将是巨大的。 是Rails的新手。
Rails中的params
只是一个Hash(很好)。
要在Ruby中访问哈希值,请使用方括号语法:
v = params.require(:service).permit(:title)
@test = v['title']
Rails中的Params是一种称为HashWithIndifferentAccess
的特殊哈希类型。 因此,我们可以同时执行v['title']
或v[:title]
。
您可以执行以下操作:
@test = params.require(:service).permit(:title)[:title]
def create
@qure = params.require(:service).permit(:level_id)[:level_id]
@test = params.require(:service).permit(:title)[:title]
@gain = @test.split(",")
# Note: You need to use a hash to pass args to the model
@gain.each do |fil|
Service.create!(title: fil, level_id: @qure)
end
redirect_to root_url
end
我也用过创造! 在方法中,但如果要使用验证,则应考虑使用save并检查返回值。 如果存在验证问题,以上内容将引发错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.