rails存储数据到mysql时中文乱码问题

本文介绍了一种针对中国开发者在使用MySQL时进行字符集配置的方法。通过在Ruby框架的ApplicationController中添加过滤器代码,实现了设置Content-Type为UTF-8,并通过ActiveRecord执行SQL命令SET NAMES utf8来确保数据库连接使用正确的字符集。

这个问题到处都是,放在这里记下来日后也好查了,赫赫

首先对于中国的开发者使用mysql实例配置工具的时候这样配置吧:

然后在控制器的父类 ApplicationController里加上一个过滤器 代码如下

ruby 代码
  1. class ApplicationController < ActionController::Base   
  2.   before_filter :config_charsets  
  3.   def config_charsets   
  4.     @headers["Content-Type"] = "text/html;charset=utf-8"  
  5.     suppress(ActiveRecord::StatementInvalid) do  
  6.       ActiveRecord::Base.connection.execute 'SET NAMES utf8'   
  7.     end  
  8.   end  
  9. end  
这样就ok了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值