`

Rails3数据库读取数据的乱码问题

 
阅读更多
主要参考了这里http://runupwind.iteye.com/blog/1001758

问题描述:
在应用中,向数据库添加了几个中文值,页面读取并显示的时候,发现报错,错误信息
incompatible character encodings: UTF-8 and ASCII-8BIT

参考上面链接中的文章,解决过程记录如下:
首先 在页面上调用
article.name.encoding 
显示的是
ASCII-8BIT
说明数据库读出的文字编码格式不是utf8
于是我到database.yml中发现,竟然粗心的没有设置编码格式,于是添加上
development:
  adapter: mysql
  host: localhost
  encoding: utf8

但是仍然无效

查资料得知  rails3 默认使用mysql adapter是mysql2. 我用的依然是mysql
gem install mysql2

成功(比其那些windows用户还是爽了一下,这里没有遇到问题,很顺利)
顺便把database.yml 修改
development:
  adapter: mysql2
  host: localhost
  encoding: utf8

重启rails的server,运行成功,问题解决
分享到:
评论

相关推荐

    Rails的中文乱码问题

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

    labrador, Rails 开发数据库的忠实数据检索器.zip

    labrador, Rails 开发数据库的忠实数据检索器 v0.2.1用于 Rails 开发数据库的忠实数据库( 未知) 客户端。安装拉布拉多可以通过一个聚合 shell 命令的单一拷贝来安装。 详细说明可以在拉布拉多网站的主页上找到。插件...

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

    然而,有时在尝试连接Rails应用到MySQL数据库时,可能会遇到一些问题。本篇文章将深入探讨这些常见问题及其解决方案。 首先,Rails与MySQL的连接问题可能源于配置不正确。在`config/database.yml`文件中,你需要...

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

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

    Ruby on rails 数据库详细配置

    配置完成后,Rails应用程序将能够根据这些参数与数据库建立连接,并执行CRUD(创建、读取、更新、删除)操作。Rails的ActiveRecord库提供了方便的数据模型抽象,使得开发者可以使用Ruby代码轻松操作数据库表。 总的...

    Ruby on Rails:数据库设计与迁移教程.docx

    Ruby on Rails:数据库设计与迁移教程.docx

    Ruby on Rails安装及MySQL数据库配置指南

    例如,在创建 POSTS 应用时可能会遇到问题,创建数据后数据库中有数据,但是到 Listing posts 界面无法查看,总是报错。解决方法是下载 libmySQL.dll 文件并将其放到 RUBY_HOME/bin/目录下。 四、开发体验 使用 ...

    Ruby-Multiverse让Rails支持多数据库

    默认情况下,Rails仅支持单个主数据库,但Multiverse允许开发者定义和管理多个数据库,使数据分片和扩展变得更加简单。 在Rails中使用Multiverse,首先需要安装相应的gem。在Gemfile中添加`gem 'multiverse'`,然后...

    Rails3常用命令行命令

    Rails3 是 Ruby on Rails 框架的一个版本,它提供了一系列强大的命令行工具,使得开发者可以快速地构建和管理Web应用。在本文中,我们将深入探讨Rails3中的常用命令,帮助你更高效地进行开发工作。 首先,新建一个...

    Ruby-SecondBase为Rails提供双数据库无缝相集成

    "Ruby-SecondBase"就是为了解决这个问题而出现的一个库,它为Rails应用提供了无缝集成双数据库的能力。 SecondBase是专门为Rails设计的一个数据库扩展工具,它扩展了ActiveRecord的功能,使得在Rails应用中处理两个...

    rails3.1.0解决数据库取出来的信息编码为utf-8

    标题 "rails3.1.0解决数据库取出来的信息编码为utf-8" 指向的是在使用Rails 3.1.0版本时遇到的一个常见问题,即从数据库检索的数据编码不是预期的UTF-8格式,导致显示异常或乱码。在Rails应用中,数据的正确编码对于...

    Ubuntu 11.04安装Ruby on rails 连接MySQL数据库.pdf

    这一步是关键,它指定了MySQL的默认字符集为UTF-8,从而避免了中文乱码的问题。 #### 二、安装与配置Ruby on Rails Ubuntu 11.04默认包含Ruby 1.8.7和Rails 2.3.5,但为了更好的兼容性和性能,建议手动更新或安装...

    ruby on rails 3 tutorial.pdf

    接下来,你将深入到MVC架构中,学习如何创建数据模型(Models),这是Rails应用程序的核心部分,用于与数据库交互。你将学习ActiveRecord,它是Rails提供的一个ORM(Object-Relational Mapping)工具,允许你用Ruby...

    浅谈Ruby on Rails下的rake与数据库数据迁移操作

    总结来说,Rails的Migration和rake工具在数据库管理和数据迁移中各自扮演着不同的角色。Migration应专注于数据库Schema的演变,而rake任务则更适合处理复杂的数据操作。遵循最佳实践,编写清晰、高效的rake任务,...

    centOS Rails3环境搭建

    ### CentOS环境下Rails 3开发环境搭建详解 #### 一、准备工作与环境配置 在开始部署Rails 3开发环境之前,我们需要确保系统上已经安装了一些基本的软件包和工具。这一步骤对于后续的Ruby和Rails安装至关重要。 ##...

    Ruby Rails 3 Linda

    4. **数据库交互**:Rails采用ActiveRecord模式,它是ORM(对象关系映射)的一部分,允许开发者使用Ruby代码操作数据库。理解ActiveRecord的基本用法,如创建模型,定义属性,以及CRUD(创建、读取、更新、删除)...

    Rails for Zombies

    通过"Rails for Zombies"教程,学习者能够对Ruby on Rails框架中的基本概念、数据结构、数据库操作方法、对象属性的访问方式等有一个全面而深入的理解,并能够运用这些知识点来创建基本的Web应用程序。

Global site tag (gtag.js) - Google Analytics