【发布时间】:2015-01-07 03:00:29
【问题描述】:
我正在玩 Netflix 的 Workflowable gem。现在我正在制作一个用户可以选择的自定义操作。
我最终用@options[:priority][:value] 拉出{"id":1,"value":"High"}
我想要做的是获得 1 的 id 值。知道如何将它拉出来吗?我试过@options[:priority][:value][:id],但这似乎是一个错误。
这是动作的样子/我如何记录值:
class Workflowable::Actions::UpdateStatusAction < Workflowable::Actions::Action
include ERB::Util
include Rails.application.routes.url_helpers
NAME="Update Status Action"
OPTIONS = {
:priority => {
:description=>"Enter priority to set result to",
:required=>true,
:type=>:choice,
:choices=>[{id: 1, value: "High"} ]
}
}
def run
Rails.logger.debug @options[:priority][:value]
end
end
这是错误:
Error (3a7b2168-6f24-4837-9221-376b98e6e887): TypeError in ResultsController#flag
no implicit conversion of Symbol into Integer
@options[:priority] 是这样的:
{"description"=>"Enter priority to set result to", "required"=>true, "type"=>:choice, "choices"=>[{"id"=>1, "value"=>"High"}], "value"=>"{\"id\":1,\"value\":\"High\"}", "user_specified"=>true}
【问题讨论】:
标签: ruby-on-rails ruby