• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Ruby on Rails中的ActiveResource使用详解

    当 HTTP 响应是一个与存在的格式不同的格式时(XML 和 JSON),需要某些额外的格式解析,创一个你惯用的格式,并在类别中使用它。惯用的格式应当实作下列方法:extension, mime_type,
        encode 以及 decode。

        

    module ActiveResource
       module Formats
        module Extend
         module CSVFormat
          extend self
    
          def extension
           'csv'
          end
    
          def mime_type
           'text/csv'
          end
    
          def encode(hash, options = nil)
           # 数据以新格式编码并返回
          end
    
          def decode(csv)
           # 数据以新格式解码并返回
          end
         end
        end
       end
      end
    
      class User  ActiveResource::Base
       self.format = ActiveResource::Formats::Extend::CSVFormat
    
       ...
      end
    
    

        若 HTTP 请求应当不扩展发送时,覆写 ActiveResource::Base 的 element_path 及 collection_path 方法,并移除扩展的部分。

      class User  ActiveResource::Base
       ...
    
       def self.collection_path(prefix_options = {}, query_options = nil)
        prefix_options, query_options = split_options(prefix_options) if query_options.nil?
        "#{prefix(prefix_options)}#{collection_name}#{query_string(query_options)}"
       end
    
       def self.element_path(id, prefix_options = {}, query_options = nil)
        prefix_options, query_options = split_options(prefix_options) if query_options.nil?
        "#{prefix(prefix_options)}#{collection_name}/#{URI.parser.escape id.to_s}#{query_string(query_options)}"
       end
      end
    
    

        如有任何改动网址的需求时,这些方法也可以被覆写。

    您可能感兴趣的文章:
    • 关于Ruby on Rails视图编写的一些建议
    • 关于Ruby on Rails路由配置的一些建议
    • 详解Ruby on Rails中的Cucumber使用
    上一篇:Ruby on Rails中的ActiveRecord编程指南
    下一篇:Ruby on Rails迁移时的一些注意事项
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Ruby on Rails中的ActiveResource使用详解 Ruby,Rails,中的,ActiveResource,