catalyst支援unicode的重要配置
痛苦了兩天,終於在catalyst裡邊可以正確處理漢字了。
最後起到關鍵作用的還是一個catalyst的plugin:Catalyst::Plugin::Unicode
載入了這個之後,就基本上提交漢字也正常了。
主要注意的配置如下紅色:
Mysql裡邊的表用utf8編碼:
CREATE TABLE `change_event` (
`event_id` int(11) NOT NULL auto_increment,
`event_time` date default NULL,
`app` varchar(20) default NULL,
`cat` varchar(20) default NULL,
`event_type` varchar(20) default NULL,
`title` varchar(300) default NULL,
`content` text,
PRIMARY KEY (`event_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
CBS.pm主模組載入unicode plugin:
use Catalyst qw/
-Debug
ConfigLoader
Static::Simple
StackTrace
Session
Session::Store::FastMmap
Session::State::Cookie
Unicode
/;
DBIx::Class配置一個utf8編碼的表
greatdba:/home/robin/CBS/lib/CBSDB # more Change_event.pm
package CBSDB::Change_event;
use base qw/DBIx::Class/;
__PACKAGE__->load_components(qw/ UTF8Columns PK::Auto Core /);
__PACKAGE__->table('change_event');
__PACKAGE__->add_columns(qw/ event_id event_time app cat event_type title content /);
__PACKAGE__->utf8_columns(qw/ event_id event_time app cat event_type title content /);
__PACKAGE__->set_primary_key( qw/ event_id /);
1;
DBIx::Schema的重要配置:
greatdba:/home/robin/CBS/lib/CBS/Model # more CBSDB.pm
package CBS::Model::CBSDB;
use strict;
use base 'Catalyst::Model::DBIC::Schema';
__PACKAGE__->config(
schema_class => 'CBSDB',
connect_info => [
'dbi:mysql:database=dbStatus:host=172.23.16.100',
'dbstatus',
'******',
{
'on_connect_do' => ["SET NAMES 'latin1'"]
},
],
);
最後起到關鍵作用的還是一個catalyst的plugin:Catalyst::Plugin::Unicode
載入了這個之後,就基本上提交漢字也正常了。
主要注意的配置如下紅色:
Mysql裡邊的表用utf8編碼:
CREATE TABLE `change_event` (
`event_id` int(11) NOT NULL auto_increment,
`event_time` date default NULL,
`app` varchar(20) default NULL,
`cat` varchar(20) default NULL,
`event_type` varchar(20) default NULL,
`title` varchar(300) default NULL,
`content` text,
PRIMARY KEY (`event_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
CBS.pm主模組載入unicode plugin:
use Catalyst qw/
-Debug
ConfigLoader
Static::Simple
StackTrace
Session
Session::Store::FastMmap
Session::State::Cookie
Unicode
/;
DBIx::Class配置一個utf8編碼的表
greatdba:/home/robin/CBS/lib/CBSDB # more Change_event.pm
package CBSDB::Change_event;
use base qw/DBIx::Class/;
__PACKAGE__->load_components(qw/ UTF8Columns PK::Auto Core /);
__PACKAGE__->table('change_event');
__PACKAGE__->add_columns(qw/ event_id event_time app cat event_type title content /);
__PACKAGE__->utf8_columns(qw/ event_id event_time app cat event_type title content /);
__PACKAGE__->set_primary_key( qw/ event_id /);
1;
DBIx::Schema的重要配置:
greatdba:/home/robin/CBS/lib/CBS/Model # more CBSDB.pm
package CBS::Model::CBSDB;
use strict;
use base 'Catalyst::Model::DBIC::Schema';
__PACKAGE__->config(
schema_class => 'CBSDB',
connect_info => [
'dbi:mysql:database=dbStatus:host=172.23.16.100',
'dbstatus',
'******',
{
'on_connect_do' => ["SET NAMES 'latin1'"]
},
],
);
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/82392/viewspace-332656/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ECMAScript 6:更好的 Unicode 支援Unicode
- Catalyst資料包監控SPAN/RSPAN與配置(轉)
- Perl Catalyst 倒出 ExcelExcel
- 最簡練有效的catalyst的action總結
- Mysql重要配置引數的整理MySql
- Nginx 支援websocket的配置NginxWeb
- 初次使用CxImage類庫、VC6配置UNICODE的方法Unicode
- Spark SQL / Catalyst 內部原理 與 RBOSparkSQL
- 配置nginx支援Nginx
- 配置nginx對php的支援NginxPHP
- nginx配置 laravel 支援NginxLaravel
- NGINX配置SSL支援Nginx
- Nginx配置支援phpNginxPHP
- Unicode的前世今生Unicode
- unicodeUnicode
- 在catalyst中類方法後面有個屬性
- Cisco Catalyst交換機密碼恢復策略(轉)密碼
- 配置nginx支援pathinfo功能Nginx
- Catalyst 6509軟體從CatOS到IOS方法(轉)iOS
- 讓IIS支援PHP的配置步驟薦PHP
- Tomcat 配置支援不同的域名訪問各自不同程式的配置方法Tomcat
- 介紹Nginx配置支援PHPNginxPHP
- 如何配置Hibernate支援MySqlMySql
- 配置ubuntu支援ADSL(轉)Ubuntu
- 網路配置審計比以往更重要
- 請教如何在jboss下設定帶unicode引數的mysql配置檔案?UnicodeMySql
- tomcat支援https的server.xml配置TomcatHTTPServerXML
- nginx配置https(可支援thinkphp的pathinfo模式)NginxHTTPPHP模式
- 配置支援DML和DDL操作同步的GoldenGateGo
- Latex 中文支援CJK的安裝與配置
- Hacking with UnicodeUnicode
- Unicode 與 UTFUnicode
- Unicode 筆記Unicode筆記
- Spring Boot 支援 JSP配置Spring BootJS
- nginx配置支援websocket協議wssNginxWeb協議
- JavaScript 有個 Unicode 的天坑JavaScriptUnicode
- unicode、utf-8、ansi的故事Unicode
- TOMCAT+JIVE的安裝配置(支援中文) (轉)Tomcat