方法
- D
- E
- L
- P
常量
DATETIME_REGEX | = | /\A(?:\d{4}-\d{2}-\d{2}|\d{4}-\d{1,2}-\d{1,2}[T \t]+\d{1,2}:\d{2}:\d{2}(\.[0-9]*)?(([ \t]*)Z|[-+]\d{2}?(:\d{2})?)?)\z/ |
DATE_REGEX | = | /\A\d{4}-\d{2}-\d{2}\z/ |
匹配 YAML 格式的日期 |
类公共方法
decode(json) 链接
将 JSON
字符串(JavaScript Object
Notation)解析为哈希表。有关更多信息,请参见 www.json.org。
ActiveSupport::JSON.decode("{\"team\":\"rails\",\"players\":\"36\"}")
=> {"team" => "rails", "players" => "36"}
也称为: load
源代码: 显示 | 在 GitHub 上
# File activesupport/lib/active_support/json/decoding.rb, line 22 def decode(json) data = ::JSON.parse(json, quirks_mode: true) if ActiveSupport.parse_json_times convert_dates_from(data) else data end end
encode(value, options = nil) 链接
也称为: dump
源代码: 显示 | 在 GitHub 上
# File activesupport/lib/active_support/json/encoding.rb, line 22 def encode(value, options = nil) Encoding.json_encoder.new(options).encode(value) end
parse_error() 链接
返回在解码 JSON
时发生错误时将引发的错误的类。使用此方法意味着你不会直接依赖 ActiveSupport 的 JSON
实现,以防将来发生变化。
begin
obj = ActiveSupport::JSON.decode(some_string)
rescue ActiveSupport::JSON.parse_error
Rails.logger.warn("Attempted to decode invalid JSON: #{some_string}")
end
源代码: 显示 | 在 GitHub 上
# File activesupport/lib/active_support/json/decoding.rb, line 43 def parse_error ::JSON::ParserError end