Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
铁轨:;Mysql2::错误:字符串值不正确:";当试图保存时;“参数检查”;_Mysql_Ruby On Rails_Ruby_Encoding_Character Encoding - Fatal编程技术网

铁轨:;Mysql2::错误:字符串值不正确:";当试图保存时;“参数检查”;

铁轨:;Mysql2::错误:字符串值不正确:";当试图保存时;“参数检查”;,mysql,ruby-on-rails,ruby,encoding,character-encoding,Mysql,Ruby On Rails,Ruby,Encoding,Character Encoding,我正在尝试将params的输出保存到数据库中(我正在保存:params.inspect)-下面是一个应该保存的字符串示例: > {\"utf8\"=>\"✓\", \"_method\"=>\"patch\", \"authenticity_token\"=>\"fpQC8FY8+qztD41jjcFSJRars539KRshw/vczmmJd9Q=\", > \"car\"=>{\"role_type\"=>\"1\", \"admin_id\"=&g

我正在尝试将params的输出保存到数据库中(我正在保存:
params.inspect
)-下面是一个应该保存的字符串示例:

> {\"utf8\"=>\"✓\", \"_method\"=>\"patch\", \"authenticity_token\"=>\"fpQC8FY8+qztD41jjcFSJRars539KRshw/vczmmJd9Q=\",
> \"car\"=>{\"role_type\"=>\"1\", \"admin_id\"=>\"67\",
> \"branch_id\"=>\"1\", \"template_id\"=>\"21\", \"cost\"=>\"0.00\",
> \"carrier_additional_cost\"=>\"0.00\", ...
首先,我试图像这样保存参数:

all_params      = params.except(:controller, :action).inspect
但是没有成功。因此:

all_params      = params.except(:controller, :action).inspect.encode("iso-8859-1")
还包括:

all_params      = params.except(:controller, :action).inspect.encode("iso-8859-1").force_encoding("utf-8")
返回相同的错误

如何正确保存
参数的输出。检查

我试图保存此数据的列是
文本
,而不是
字符串


谢谢

尝试使用
参数
而不是
参数。检查

params
的示例输出为
{“控制器”=>“用户”、“操作”=>“显示”、“id”=>“1”}


这是一个散列,我认为这是您希望保存在数据库中的内容。

意外的字符串值是多少?是
?我相信是的-所有其他字符看起来都像“正常”字符…参数to_.s.encoding
给了你什么?你有没有尝试将编码强制为UTF-8?@13aal-是的,它在最新的块代码的OP中显示。