繁体   English   中英

Rails-字符串的ActionController :: Parameters

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM