`

rails操作sql server乱码问题的解决办法

    博客分类:
  • Ruby
阅读更多
class String
  require 'iconv'

  def gbk_to_utf8
    Iconv.conv("UTF-8", "gbk", self) rescue self
  end

  def utf8_to_gbk
    Iconv.conv("gbk", "UTF-8", self) rescue self
  end
end

module Backend
  module Mssql
    module InstanceMethods
      def after_initialize
        self.attributes.each do |k, v|
          if v.class.to_s == "String" and !v.empty?
            self[k] = v.gbk_to_utf8
          end
        end
      end 

     def before_validation
        self.attributes.each do |k, v|
          if v.class.to_s == "String" and !v.empty?
            self[k] = v.utf8_to_gbk
          end
        end
      end


      def before_save
        self.attributes.each do |k, v|
          if v.class.to_s == "String" and !v.empty?
            self[k] = v.utf8_to_gbk
          end
        end
      end
    end
  end
end

ActiveRecord::Base.class_eval do
  include Backend::Mssql::InstanceMethods
end
0
0
分享到:
评论

相关推荐

    rails配置sqlserver2000

    在Ruby on Rails框架中,与SQLServer 2000集成可能会比与其他常见的数据库系统(如MySQL或PostgreSQL)稍复杂一些,因为SQLServer 2000的兼容性问题和缺少官方支持。然而,通过一些第三方库和适当的配置,我们仍然...

    Ruby-SQLServerRailsActiveRecord的SQLServer适配器

    它允许开发者使用Rails的ActiveRecord模式与SQL Server进行交互,从而充分利用ActiveRecord的ORM(对象关系映射)功能,如模型定义、CRUD操作、关联和查询构建等。 首先,安装`activerecord-sqlserver-adapter`通常...

    Rails的中文乱码问题

    标题中的“Rails的中文乱码问题”涉及到的是在使用Ruby on Rails框架开发Web应用时,遇到的中文字符编码不正确的问题。Rails是一个基于Ruby语言的开源Web开发框架,它遵循MVC(Model-View-Controller)架构模式。在...

    Rails中上传文件保存中文文件名乱码

    在Rails框架中处理文件上传时,经常会遇到一个问题,那就是当用户尝试上传包含中文名称...通过这些方法,可以有效地解决Rails应用在处理中文文件名时可能出现的乱码问题,从而提高用户体验并保证数据的完整性和一致性。

    网上书城struts+jsp+SqlServer源代码

    在“网上书城”项目中,SQL Server可能包含了多个表,如书籍表(Book)、用户表(User)、订单表(Order)等,通过SQL语句进行增删改查操作。同时,可能还使用了存储过程、触发器等高级特性来优化数据处理和确保数据...

    Rails SQL查询跟踪器-Ruby开发

    Rails SQL查询跟踪器sql_tracker通过订阅Rails的sql.active_record事件通知来跟踪SQL查询。 然后,它汇总并生成报告,以使您对Ra Rails SQL查询跟踪器中发生的所有SQL查询有更深入的了解,sql_tracker通过订阅Rails...

    activerecord-sqlserver-adapter:用于RailsSQL Server适配器

    迁移中的所有简化的Rails类型都将与匹配SQL Server国家(unicode)数据类型相对应。 始终检查initialize_native_database_types 以获取更新的列表。 以下类型( date , datetime2 , datetimeoffset ,

    rails和mysql数据库连接中出现的问题以及解决办法

    通常,较新的Rails版本支持较新的MySQL版本,但旧版本的Rails可能需要降级MySQL或升级Rails以解决问题。 总结来说,解决Rails与MySQL连接问题涉及检查配置文件、安装和更新依赖、确保系统库完整、确认服务状态和...

    rails操作.docx

    《Rails操作详解:快速步入Web开发新境界》 Ruby on Rails(简称Rails)是一个基于Ruby编程语言的开源Web应用程序框架,以其高效的开发速度和优雅的代码结构闻名于世。Rails的核心理念是“Don't Repeat Yourself”...

    rails-assets, 在 Rails 中,资产管理的解决.zip

    rails-assets, 在 Rails 中,资产管理的解决 Rails 资产 Bundler 到 Bower 代理本自述文件涉及项目的开发方面。 访问站点了解如何在你的应用程序中使用 Rails 资产。 插件开发设置git clone git@github.com:tenex/r

    sql_tracker:Rails SQL查询跟踪器

    Rails SQL查询跟踪器 sql_tracker通过订阅Rails的sql.active_record事件通知来跟踪SQL查询。 然后,它汇总并生成报告,以为您提供有关Rails应用程序中发生的所有SQL查询的见解。安装将此行添加到您的应用程序的...

    activerecord-sqlserver-adapter-mirroring:Rails 的数据库镜像支持 activerecord-sqlserver-adapter

    目标 Rails 4.1.x 和 activerecord-sqlserver-adapter 4.1.0。 用法 添加到 Gemfile: gem 'tiny_tds' gem 'activerecord-sqlserver-adapter-mirroring' 将镜像部分添加到 database.yml: development: ...

    rails web server deploy guide

    标题 "rails web server deploy guide" 暗示了本文将关注如何部署Rails应用程序到Web服务器。Rails是Ruby on Rails的简称,是一个流行的开源Web开发框架,用于构建动态、数据驱动的网站。部署Rails应用通常涉及将...

    Rails

    描述中提到的博文链接指向了一个ITEYE博客文章,尽管具体内容未提供,但通常这样的博客可能会包含Rails的使用技巧、最佳实践、新版本更新或者特定问题的解决方案。 标签 "源码" 暗示了可能涉及Rails的源代码分析或...

    rails2.3.2

    在这一版本中,Active Record 提供了更强大的查询接口,包括 SQL 方法的集成和更灵活的关系管理。 2. Action Pack:包含了 MVC 架构中的 Controller 和 View 部分。Controller 处理 HTTP 请求并调用 Model,View ...

    Rails101_by_rails4.0

    此外,书中还介绍了一些Rails中的高级概念,如Strong Parameters(强参数),它在Rails 4.0版本中引入,用于解决之前版本中的参数篡改问题,从而帮助开发者安全地处理外部提交的数据。 通过一系列的教学内容,包括...

    Ruby中访问SQL Server数据库的配置实例

    总的来说,Ruby通过FreeTDS和Tiny_TDS提供了一个方便的途径来连接和操作SQL Server数据库。无论你是进行简单的查询还是复杂的业务逻辑,这些工具都能很好地支持你的开发需求。如果你对数据库操作有更深入的需求,...

    Rails recipes

    Rails Recipes是一本针对Ruby on Rails框架的实用书籍,它收集了一系列高效解决问题的技巧和方法,也被称为“Rails开发者的宝典”。作者们通过分享自己的经验和见解,为Rails程序员提供了一本既有实际操作指导又有...

Global site tag (gtag.js) - Google Analytics