serde_json to json 在柴油数据库对象中打印附加字符串 \r 和 \n
Posted
技术标签:
【中文标题】serde_json to json 在柴油数据库对象中打印附加字符串 \\r 和 \\n【英文标题】:serde_json to json prints addtitonal String \r and \n in diesel db objectserde_json to json 在柴油数据库对象中打印附加字符串 \r 和 \n 【发布时间】:2021-01-06 05:26:26 【问题描述】:Playground link
use serde_json::json; // 1.0.57
fn main()
let users = vec![Users
id : 10,
username : "test".to_string(),
password : "pass".to_string()
];
for user in &users
println!("I print id:,password:,username: ",user.id, user.password, user.username);
println!("json_serde prints ",json!(&users));
let serialized = serde_json::to_string(&users).unwrap();
println!("Different serde: ",serialized);
#[derive(Serialize, Deserialize)]
pub struct Users
pub id: i32,
pub username: String,
pub password: String,
它工作得很好,但在我的服务器上我得到了这个
I print id:4,password:test, username:test
json_serde prints ["id":4,"password":"test\r\n","username":"test\r"]
唯一的区别是我从数据库中获取数据
柴油查询
let users = users
.filter(id.eq(p_id))
.limit(10)
.load::<Users>(&connection)
.expect("Error loading posts"),
model.rs 中的实际用户
#[derive(Queryable)]
#[derive(Serialize, Deserialize)]
pub struct Users
pub id: i32,
pub username: String,
pub password: String,
shema.rs
table!
users (id)
id -> Int4,
username -> Varchar,
password -> Varchar,
【问题讨论】:
这个问题无法回答,因为它缺少重要的细节,比如数据是如何准确地插入到数据库中的,以及使用了哪些版本的 crate。 【参考方案1】:我忘记修剪我的输入,所以 serde_json 是正确的
【讨论】:
以上是关于serde_json to json 在柴油数据库对象中打印附加字符串 \r 和 \n的主要内容,如果未能解决你的问题,请参考以下文章